91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java擺動序列示例

發布時間:2020-05-28 15:02:41 來源:億速云 閱讀:236 作者:鴿子 欄目:編程語言

如果連續數字之間的差嚴格地在正數和負數之間交替,則數字序列稱為擺動序列。第一個差(如果存在的話)可能是正數或負數。少于兩個元素的序列也是擺動序列。

例如, [1,7,4,9,2,5] 是一個擺動序列,因為差值 (6,-3,5,-7,3) 是正負交替出現的。相反, [1,4,7,2,5] 和 [1,7,4,5,5] 不是擺動序列,第一個序列是因為它的前兩個差值都是正數,第二個序列是因為它的最后一個差值為零。

給定一個整數序列,返回作為擺動序列的最長子序列的長度。 通過從原始序列中刪除一些(也可以不刪除)元素來獲得子序列,剩下的元素保持其原始順序。

代碼實現:


class Solution {
public:
    int wiggleMaxLength(vector<int>& nums) {
        if(nums.size() < 2)
        return nums.size();
        const int begin = 0;
        const int up = 1;
        const int down = 2;
        int state = begin;
        int max_length = 1;
        for(int i = 1; i < nums.size(); i++)
        {
            switch(state)
            {
            case begin:
            {
                if(nums[i -1] < nums[i])
                {state = up;
                max_length++;
                }
                if(nums[i-1] > nums[i])
                {
                    state = down;
                    max_length++;
                }
            }
            break;
            case up:
            if(nums[i-1] > nums[i])
            {
                state = down;
                max_length++;
            }
            break;
            case down:
            if(nums[i-1] < nums[i])
            {
                state = up;
                max_length++;
            }
            }
        }
        return max_length;
    }
};

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

克什克腾旗| 江永县| 监利县| 平南县| 淄博市| 樟树市| 巢湖市| 图木舒克市| 玉溪市| 壤塘县| 东丰县| 托里县| 闻喜县| 平顶山市| 门头沟区| 定安县| 盘锦市| 稻城县| 西和县| 泗水县| 岑溪市| 萨嘎县| 泰顺县| 明光市| 仙居县| 长岛县| 寻乌县| 濮阳县| 南阳市| 攀枝花市| 囊谦县| 城固县| 手机| 金沙县| 台江县| 崇阳县| 安达市| 赤峰市| 望谟县| 宝清县| 云南省|