[Swift]LeetCode453. 最小移动次数使数组元素相等 | Minimum Moves to Equal Array Elements
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/9790914.html
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
Given a non-empty integer array of size n, find the minimum number of moves required to make all array elements equal, where a move is incrementing n - 1 elements by 1.
Example:
Input: [1,2,3] Output: 3 Explanation: Only three moves are needed (remember each move increments two elements): [1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]
给定一个长度为 n 的非空整数数组,找到让数组所有元素相等的最小移动次数。每次移动可以使 n - 1 个元素增加 1。
示例:
输入: [1,2,3] 输出: 3 解释: 只需要3次移动(注意每次移动会增加两个元素的值): [1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]
56ms
1 class Solution { 2 func minMoves(_ nums: [Int]) -> Int { 3 var min = nums.first! 4 var sum = 0 5 for num in nums { 6 sum += num 7 if num < min { 8 min = num 9 } 10 } 11 return sum - nums.count*min 12 } 13 }
84ms
1 class Solution { 2 func minMoves(_ nums: [Int]) -> Int { 3 var minNum = Int.max 4 var sum = 0 5 for num in nums { 6 sum += num 7 minNum = min(minNum, num) 8 } 9 10 return sum - minNum * nums.count 11 } 12 }
88ms
1 class Solution { 2 func minMoves(_ nums: [Int]) -> Int { 3 let min = nums.min()! 4 return nums.reduce(0 ,{$0 + $1}) - min * nums.count 5 } 6 }
104ms
1 class Solution { 2 func minMoves(_ nums: [Int]) -> Int { 3 if nums.isEmpty { return 0 } 4 var mini = nums[0] 5 6 for num in nums { 7 mini = min(num, mini) 8 } 9 10 var res = 0 11 for num in nums { 12 res += num - mini 13 } 14 return res 15 } 16 }
116ms
1 class Solution { 2 func minMoves(_ nums: [Int]) -> Int { 3 let min = nums.min()! 4 5 return nums.reduce(0) { total, num in total + num - min } 6 } 7 }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库