LC——寻找数组的中心索引
题目链接:https://leetcode-cn.com/problems/find-the-middle-index-in-array/
public int pivotIndex(int[] nums) {
int result = 0;
for (int i = 1; i < nums.length; i++) {
result+=nums[i];
}
int left = 0;
int right = result;
if(left == right){
return 0;
}
for (int i = 1; i < nums.length; i++) {
left+=nums[i-1];
right-=nums[i];
if(left == right){
return i;
}
}
return -1;
}
思路:
1.先计算除了下标为0的数的和。
2.遍历数组,左边加上索引为i-1的值,右边减去当前值,判断左边和右边的大小。
3.找不到就返回-1.
注:加上和减去的不是同一个值。