Swift 程序按值对字典进行排序
swiftserver side programmingprogramming更新于 2025/9/20 22:52:17
Swift 支持 sorted() 方法对给定字典中的所有元素进行排序。此方法根据值对字典中的键值对进行排序。
语法
func sorted(by:)
这里,by 参数的值为 -
大于(>) - 将元素按降序排列。
小于(<) - 将元素按升序排列。
闭包 - 根据给定的闭包对元素进行排序。
算法
步骤 1 - 创建一个包含键值对的字典。
步骤2 − 显示原始字典。
步骤 3 − 现在使用 sorted() 函数根据键值对进行排序。
步骤 4 − 显示最终输出。
示例
在下面的 Swift 程序中,我们将按值对字典进行排序。因此,我们将创建一个字典。然后在 sorted(by:) 函数中传递此闭包 ({ $0.value < $1.value }),以根据值对字典元素进行排序并显示最终结果。这里 $0 和 $1 表示传递给闭包的第一个和第二个参数。
import Foundation
import Glibc
let myDict = ["name": "Sona", "company": "MOKA.PVT", "city": "New Delhi"]
print("原始字典:", myDict)
let Sdict = myDict.sorted(by: { $0.value < $1.value })
print("排序后的字典:", Sdict)
输出
原始字典:["name": "Sona", "company": "MOKA.PVT", "city": "New Delhi"] 排序后的字典:[(key: "company", value: "MOKA.PVT"), (key: "city", value: "New Delhi"), (key: "name", value: "Sona")]
结论
以上就是我们按值对字典进行排序的方法。sorted() 方法返回准确的结果。此外,它不会修改原始字典,而是创建一个包含结果的新字典。sorted(by:) 方法的复杂度为 O(n log n),其中 n 是字典的长度。