问题:
代码:
import java.util.Scanner;
import static java.lang.Math.max;
public class SlideWindowMax {
public static void main(String[] args) {
int[] arr = {10, 20, 30, 15, 23, 12};
int x = SlideWindowMax(6, arr, 3);
System.err.println(x);
}
private static int SlideWindowMax(int N, int[] arr, int M) {
int maxEle= 0;
for (int i = 0; i < N; i++) {
int sum =0;
if((N-i)<M){
break;
}
for (int j = i; j < M+i; j++) {
sum += arr[j];
}
maxEle = max(maxEle,sum);
System.out.println("sum="+sum+", maxEle="+maxEle);
}
return maxEle;
}
}
输出:
sum=60, maxEle=60
sum=65, maxEle=65
sum=68, maxEle=68
sum=50, maxEle=6868
如有错误或改进,欢迎指正,谢谢