724.寻找数组的中心索引
程序员文章站
2022-07-13 17:31:14
...
原文链接:https://leetcode-cn.com/problems/find-pivot-index/
题目:
思路分析:这道题是给定一个整数类型的数组,然后让我们返回其中心索引。
1.首先我们求出数组的所有元素之和,然后定义两个变量leftSum和rightSum。
2.遍历数组元素,首先如果i=0的话直接让leftSum等于0,要不然就让leftSum+=nums[i-1]。
3.让rightSum=sum - nums[i] - leftSum,然后判断leftSum和rightSum的值是否相等,如果相等直接return i。
4.如果for循环结束两个变量还是不相等,就return -1。
源代码:
class Solution {
public int pivotIndex(int[] nums) {
int sum = 0;
for(int num : nums){
sum += num;
}
int leftSum = 0;
int rightSum = 0;
for(int i = 0;i < nums.length;i++){
if(i == 0){
leftSum = 0;
}else{
leftSum+=nums[i - 1];
}
rightSum = sum - nums[i] - leftSum;
if(rightSum == leftSum){
return i;
}
}
return -1;
}
}