版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37014990/article/details/82593250
public static void main(String[] args) {
int[] arr = {1, 3, 4, 6, 7, 8, 9, 11};
method(arr);
}
public static void method(int[] arr) {
// 参数检查
if(arr == null) return ;
// 全局连续数字最大
int sumNum = 1;
// 局部连续数字最大
int sumPart = 1;
int start = 0;
for(int i = 1; i < arr.length; i++) {
if(arr[i - 1] + 1 == arr[i]) {
sumPart++;
start = i;
} else {
if(sumNum < sumPart) {
sumNum = sumPart;
}
// 初始局部连续计数
sumPart = 1;
}
}
if(arr.length == sumPart) sumNum = sumPart;
System.out.println("[" + arr[start - sumNum + 1] + ", " + sumNum + "]");
}