Skip to content# Find pivot index code challenge

### Problem

### Example

### Solution

### Appendix

## Newsletter

— 1 min read

My approach to solving LeetCode’s Find pivot index code challenge.

Given an array of integers `nums`

, calculate the pivot index of this array.

The pivot index is the index where the sum of all the numbers strictly to the left of the index is equal to the sum of all the numbers strictly to the index's right.

If the index is on the left edge of the array, then the left sum is `0`

because there are no elements to the left. This also applies to the right edge of the array.

Return the leftmost pivot index. If no such index exists, return `-1`

.

`1Input: nums = [1,7,3,6,5,6]2Output: 33Explanation:4The pivot index is 3.5Left sum = nums[0] + nums[1] + nums[2] = 1 + 7 + 3 = 116Right sum = nums[4] + nums[5] = 5 + 6 = 11`

We create an initial array (`total`

) where we calculate the total sum of the given array's (`nums`

) elements using the `Array.reduce()`

method. Also, we create `leftSum`

and assign it to `0`

.

Then we start for a loop where we iterate through the `nums`

array. We calculate `rightSum`

during each iteration by subtracting the current iteration value and `leftSum`

from the `total`

. If the sums of the left and right parts are equal, we find the pivot index and return it. Otherwise, we update `leftSum`

with the current iteration value and continue iterating through the array.

If by the time we finish the iteration and haven't found the pivot index, we return `-1`

according to the problem description.

```
1var pivotIndex = function (nums) {2 const total = nums.reduce((a, b) => a + b);3
4 let leftSum = 0;5
6 for (let i = 0; i < nums.length; i++) {7 rightSum = total - nums[i] - leftSum;8
9 if (leftSum === rightSum) {10 return i;11 }12
13 leftSum += nums[i];14 }15
16 return -1;17};
```

Sign up to get updates when I write something new. No spam ever.

Subscribe to my Newsletter