zoukankan      html  css  js  c++  java
  • 462. Minimum Moves to Equal Array Elements II

    Given a non-empty integer array, find the minimum number of moves required to make all array elements equal, where a move is incrementing a selected element by 1 or decrementing a selected element by 1.

    You may assume the array's length is at most 10,000.

    Example:

    Input:
    [1,2,3]
    
    Output:
    2
    
    Explanation:
    Only two moves are needed (remember each move increments or decrements one element):
    
    [1,2,3]  =>  [2,2,3]  =>  [2,2,2]
     1 class Solution {
     2 public:
     3     int minMoves2(vector<int>& nums) {
     4         int len = nums.size();
     5         int sum = 0;
     6         sort(nums.begin(), nums.end());
     7         for (int i = 0;i < len;i++)
     8         {
     9             if (nums[i] != nums[len / 2])
    10             {
    11                 sum += abs(nums[i] - nums[len / 2]);
    12             }
    13         }
    14         return sum;
    15     }
    16 };
  • 相关阅读:
    asp.net中的Application概述
    Android布局
    Content Provider
    Service
    进程和线程Processes and Threads
    Android模拟器
    Fragment
    Ui Event
    Loader
    sqlite3命令
  • 原文地址:https://www.cnblogs.com/wujufengyun/p/7467627.html
Copyright © 2011-2022 走看看