724. Find Pivot Index
题目简介
/**
* @param {number[]} nums
* @return {number}
*/
题目给我们一个数字数组 nums
要求我们找出一个元素下标使得其左右两边的元素之和相等
最后返回该元素下标
解题思路
我们用两个变量 leftSum 与 rightSum 来记录任意元素所有两边元素之和
在遍历的过程中,我们不断更新与判断两个变量是否相等,如果相等则马上返回当前下标
否则遍历完成后返回 -1
Javascript
/**
* @param {number[]} nums
* @return {number}
*/
var pivotIndex = function (nums) {
let rightSum = nums.reduce((acc, cur) => acc + cur, 0)
let leftSum = 0
for (let i = 0; i < nums.length; i++) {
leftSum += i === 0 ? 0 : nums[i-1]
rightSum -= nums[i]
if (leftSum === rightSum) {
return i
}
}
return -1
};