private static int sumArrMaxDivide(int[] num, int start, int mid, int end) { //找出跨越中间点的最大子数组 int startSum = Integer.MIN_VALUE; int sum = 0; for (int i = mid; i >= start; i--) { sum += num[i]; startSum = Math.max(startSum, sum); } int endSum = Integer.MIN_VALUE; sum = 0; for (int i = mid + 1; i <= end; i++) { sum += num[i]; endSum = Math.max(endSum, sum); } return Math.max(startSum, 0) + Math.max(endSum, 0); }//将这里的for循环换成while循环
时间: 2024-02-02 19:03:09 浏览: 22
可以将这里的 for 循环换成 while 循环,代码如下:
private static int sumArrMaxDivide(int[] num, int start, int mid, int end) {
//找出跨越中间点的最大子数组
int startSum = Integer.MIN_VALUE;
int sum = 0;
int i = mid;
while (i >= start) {
sum += num[i];
startSum = Math.max(startSum, sum);
i--;
}
int endSum = Integer.MIN_VALUE;
sum = 0;
i = mid + 1;
while (i <= end) {
sum += num[i];
endSum = Math.max(endSum, sum);
i++;
}
return Math.max(startSum, 0) + Math.max(endSum, 0);
}
相关问题
private static int
不好意思,我不太懂这个问题。当我们声明一个私有的静态整型变量时,需要使用以下语法:
private static int variableName;
其中,private表示该变量是私有的,只能在类内部访问;static表示该变量是静态的,属于类而不是实例;int表示该变量的数据类型是整型。而variableName则是变量的名称,可以根据实际情况进行命名。
private static final int
private static final int 是Java中的关键字,表示一个私有的静态常量。其中,private表示该常量只能在当前类中访问,static表示该常量是静态的,即在类加载时就已经存在,final表示该常量是不可修改的。