給定一個整數類型的數組 nums,請編寫一個能夠返回數組 “中心索引” 的方法。
我們是這樣定義數組 中心索引 的:數組中心索引的左側所有元素相加的和等于右側所有元素相加的和。
如果數組不存在中心索引,那么我們應該返回 -1。如果數組有多個中心索引,那么我們應該返回最靠近左邊的那一個。
示例 1:
輸入:
nums = [1, 7, 3, 6, 5, 6]
輸出:3
解釋:
索引 3 (nums[3] = 6) 的左側數之和 (1 + 7 + 3 = 11),與右側數之和 (5 + 6 = 11) 相等。
同時, 3 也是第一個符合要求的中心索引。
代碼
class Solution {public int pivotIndex(int[] nums) {int sum=Arrays.stream(nums).sum();//計算總和int pre=0;//左邊的和for(int i=0;i<nums.length;i++)if(sum-nums[i]-pre==pre)//右邊的和return i;else pre+=nums[i];return -1;}
}