在Python中最小移动到相等数组元素II

假设我们有一个非空的整数数组,我们必须找到使所有数组元素相等所需的最小移动数,其中移动是将选定元素递增或递减1。因此,当数组类似于[1 ,2,3],则输出将为2,因为1将增加到2,而3将减少到2。

为了解决这个问题,我们将遵循以下步骤-

  • 对数组数字进行排序

  • 将计数器设置为0

  • 为我数不清

    • 计数器:=计数器+绝对值(i – nums [nums的长度/ 2])

  • 返回柜台

示例(Python)

让我们看下面的实现以更好地理解-

class Solution:
   def minMoves2(self, nums):
      nums.sort()
      counter = 0
      for i in nums:
         counter += abs(i-nums[len(nums)//2])
      return counter
ob1 = Solution()print(ob1.minMoves2([2,5,3,4]))

输入值

[2,5,3,4]

输出结果

4