我想要最简单的方法来为我的tableview打印出数组中每组数字的出现。
我找到了类似的答案,但它们的帮助还不够。
我的代码是这样设置的,因为我为每个集合换了一行,并在每个数组元素中的每个数字之间使用逗号分隔。
var numbers = [
"""1, 2, 3, 4""",
"""5, 6, 7, 8""",
"""3, 4, 5, 6""",
"""1, 2, 7, 8""",
"""1, 2, 3, 4""",
"""3, 4, 5, 6""",
"""1, 2, 3, 4"""
]
如何打印出每种组合出现的频率?
答案 0 :(得分:1)
您可以使用字典分组初始化程序并映射其值计数:
let setFrequency = Dictionary(grouping: numbers) { $0 }
.mapValues{ $0.count }
let setFrequency = numbers.reduce(into: [:]) { $0[$1, default: 0] += 1 }
print(setFrequency) // ["3, 4, 5, 6": 2, "1, 2, 7, 8": 1, "5, 6, 7, 8": 1, "1, 2, 3, 4": 3]
或使用reduce(into:)
(cola-colb) <= 1000