东莞建设一个网站,辽阳建网站,网站建设开发维护,做的网站为什么图片看不了怎么办如果连续数字之间的差严格地在正数和负数之间交替#xff0c;则数字序列称为摆动序列。第一个差#xff08;如果存在的话#xff09;可能是正数或负数。少于两个元素的序列也是摆动序列。
例如#xff0c; [1,7,4,9,2,5] 是一个摆动序列#xff0c;因为差值 (6,-3,5,-7,3…如果连续数字之间的差严格地在正数和负数之间交替则数字序列称为摆动序列。第一个差如果存在的话可能是正数或负数。少于两个元素的序列也是摆动序列。
例如 [1,7,4,9,2,5] 是一个摆动序列因为差值 (6,-3,5,-7,3) 是正负交替出现的。相反, [1,4,7,2,5] 和 [1,7,4,5,5] 不是摆动序列第一个序列是因为它的前两个差值都是正数第二个序列是因为它的最后一个差值为零。
给定一个整数序列返回作为摆动序列的最长子序列的长度。 通过从原始序列中删除一些也可以不删除元素来获得子序列剩下的元素保持其原始顺序。
示例 1:
输入: [1,7,4,9,2,5] 输出: 6 解释: 整个序列均为摆动序列。
代码
class Solution {public int wiggleMaxLength(int[] nums) {int nnums.length;if(n0) return 0;int len01,len11;//len0代表上升子序列的最大长度len1代表下降子序列的长度for(int i1;in;i){if(nums[i]nums[i-1])//出现了上升下降子序列长度加1并将结果赋值给上升的子序列长度len0len11;else if(nums[i]nums[i-1])//出现了下降上升子序列长度加1并将结果赋值给的下降子序列长度len1len01;}return Math.max(len0,len1);}
}