🌗 724. 寻找数组的中心下标
2022年6月20日
- algorithm
🌗 724. 寻找数组的中心下标
难度: 🌗
问题描述
解法
class Solution {
public int pivotIndex(int[] nums) {
// 思路:
// 前缀和,res 下标处 leftSum == rightSum
// 遍历 2 遍,添加虚拟节点
int len = nums.length;
// 特殊情况特判
if(len == 1) {
return 0;
}
int[] left = new int[len];
int sum = 0;
for(int i = 1; i < len; i ++) {
sum += nums[i - 1];
left[i] = sum;
}
int[] right = new int[len];
sum = 0;
for(int j = len - 2; j >= 0; j --) {
sum += nums[j + 1];
right[j] = sum;
}
// 最后一次遍历
for(int i = 0; i < len; i ++) {
if(left[i] == right[i]) {
return i;
}
}
return -1;
}
}