【Leetcode】453. Minimum Moves to Equal Array Elements

記錄演算法發表於2020-12-28

題目地址:

https://leetcode.com/problems/minimum-moves-to-equal-array-elements/

給定一個長 n n n陣列 A A A,每次操作允許將其中的 n − 1 n − 1 n1個數進行加 1 1 1的操作,問至少進行多少次操作可以使得 A A A的所有數都相等。

參考https://blog.csdn.net/qq_46105170/article/details/110678718。程式碼如下:

public class Solution {
    public int minMoves(int[] nums) {
        int res = 0, min = Integer.MAX_VALUE;
        for (int num : nums) {
            min = Math.min(min, num);
        }
        
        for (int num : nums) {
            res += num - min;
        }
        
        return res;
    }
}

時間複雜度 O ( n ) O(n) O(n),空間 O ( 1 ) O(1) O(1)

相關文章