遍历从特定列索引开始的数组



我需要遍历数组,从中间列索引添加到数组的东部,然后得到值的总和。

然后从列索引的中间遍历数组到数组的西部,得到值的总和。

然后将两者相加求和。对n行重复此操作,然后找到最佳路径。

我真的不知道如何从中点开始计算。

int mid = (firstIndex + lastIndex)/2应该为奇数长度数组提供中间值,为偶数长度数组提供int mid = ((firstIndex + lastIndex)/2) - 1array[mid]

从这里开始,您可以简单地使用循环将每边的数字相加,并通过在循环的条件中使用mid变量来获得边。

int leftSum = 0;
int rightSum = 0;
for(int i = 0; i <= mid; i++) { //from first index to middle of array
leftSum += array[i];
}
for(int i = mid; i <= array.length - 1; i++) { //from middle to end of array
rightSum += array[i];
}
int totalSum = leftSum + rightSum;

这将适用于一维数组。听起来你在谈论使用二维数组。在这种情况下,您将使用嵌套循环从行到列,其中外部for循环是行,内部循环是确定列。

最新更新