欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

724.寻找数组的中心索引

程序员文章站 2022-07-13 17:31:14
...

原文链接:https://leetcode-cn.com/problems/find-pivot-index/

 

题目:

724.寻找数组的中心索引

思路分析:这道题是给定一个整数类型的数组,然后让我们返回其中心索引。

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;
    }
}