724 leetcode 寻找数组的中心

题目描述:
在这里插入图片描述
思路:
定义一个左边和右边,中心索引从最左边开始,比较,当左右相等的啥时候,返回中心索引,否则返回-1;

代码如下:

class Solution {
public:
    int pivotIndex(vector<int>& nums) {
        if(nums.size()<1) return -1;
        int left=0,right=0;
        int mid=0,n=nums.size()-1;
        if(mid<n){
            for(int i=mid+1;i<=n;i++){
                right+=nums[i];
            }
        }
        while(left!=right){
            if(left==right)
            return mid;
            if(left!=right){
                left+=nums[mid];
                mid++;
                if(mid==n+1)
                return -1;
                else right-=nums[mid];
            }
        }
    return mid;   
    }
};
发布了123 篇原创文章 · 获赞 0 · 访问量 960

猜你喜欢

转载自blog.csdn.net/peachzy/article/details/104312900