一、题目描述
题目链接:https://leetcode-cn.com/problems/longest-turbulent-subarray/
二、题目分析
这道题跟摆动数组非常类似,可以说用同种解法了,区别就是数组是否连续。
可以参考博客:https://mp.csdn.net/console/editor/html/107149523
三、代码
public int maxTurbulenceSize(int[] A) {
int len = A.length;
int up = 1;
int down = 1;
int max = 1;
for (int i = 1; i < len; ++ i) {
if (A[i-1] < A[i]) {
up = down + 1;
down = 1;
} else if (A[i-1] > A[i]) {
down = up + 1;
up = 1;
} else {
up = 1;
down = 1;
}
max = Math.max(max,Math.max(up,down));
}
return max;
}