Minimum Moves to Equal Array Elements
Given an integer array, find the minimum number of moves to make all elements equal. In one move, you can increment n-1 elements by 1.
Example: nums = [1,2,3] → Output: 3
Sample Input
—
Sample Output
—
Constraints
- 1 <= nums.length <= 10^5
- -10^9 <= nums[i] <= 10^9
Test Cases
Case 1
Args: [[1,2,3]]
Expected: 3
Math Insight
Incrementing n-1 elements by 1 is equivalent to decrementing 1 element by 1. Answer = sum - n * min.
function minMoves(nums) {
const min = Math.min(...nums);
return nums.reduce((sum, n) => sum + n - min, 0);
}
Time: O(n) | Space: O(1)
Saved in this browser only. Private to you.