【LeetCode】376. 摆动序列

题目

题目链接

思路解析

因为题⽬要求的是最⻓摆动⼦序列的⻓度,所以只需要统计数组的峰值数量就可以了(相当于是删除单⼀坡度上的节点,然后统计⻓度)

点击查看代码
class Solution {
public:
    int wiggleMaxLength(vector<int>& nums) {
        if(nums.size() == 1)return nums.size();
        int curdiff = 0;
        int prediff = 0;
        int result = 1;
        for(int i = 0; i < nums.size()-1;i++){
            curdiff = nums[i+1]-nums[i];
            if((curdiff > 0 && prediff <= 0)||(curdiff < 0 && prediff >= 0)){
                result++;
                prediff = curdiff;
            }
        }
        return result;
    }
};
posted @ 2022-08-18 15:46  小超不挑食  阅读(11)  评论(0编辑  收藏  举报