美文网首页
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