美文网首页
453. 最小移动次数使数组元素相等

453. 最小移动次数使数组元素相等

作者: 雇个城管打天下 | 来源:发表于2018-07-19 14:41 被阅读122次

题目

解析

其实刚拿到这道题的时候毫无头绪,想着怎么才能让程序知道应该让那几个加1,后来查看了说明之后才发现这其实是道数学问题,倒过来思考即可。

每次移动使n-1个元素加一,直到最大值,倒过来就是每次可使一个元素减一,直到最小值

代码

class Solution {
    public int minMoves(int[] nums) {
        Arrays.sort(nums);
        int sum = 0;
        for (int i = 1; i < nums.length; i++) {
            sum += (nums[i] - nums[0]);
        }
        return sum;
    }
}

相关文章

网友评论

      本文标题:453. 最小移动次数使数组元素相等

      本文链接:https://www.haomeiwen.com/subject/kpdtmftx.html