文章目录
题目
代码(7.22 首刷看解析)
想不出来,我要崩溃了。
class Solution {
public:
int wiggleMaxLength(vector<int>& nums) {
int n = nums.size();
if(n < 2)
return n;
int prediff = nums[1] - nums[0], curdiff = 0;
int res = prediff != 0 ? 2 : 1;
for(int i = 2; i < n; i++) {
curdiff = nums[i] - nums[i-1] ;
if(((curdiff > 0) && (prediff <= 0)) || ((curdiff < 0) && (prediff >= 0))) {
res++;
prediff = curdiff;
}
}
return res;
}
};