gpt4 book ai didi

iOS - 选择整数数组中第二小的数字

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:59:25 24 4
gpt4 key购买 nike

假设我有一个数字数组:

let numbers: [Int] = [1,2,3,4,5,6,7,8]

我想在该数组中选择第二小的数字,但我不想使用索引,我知道你可以使用 min/maxElement 点表示法选择最低和最高的整数,所以我如何获得第二小的数字还是第二高?

最佳答案

根据 OP 的评论,如果出现冗余,第二个最大值、最小值将是数组的最大值和最小值。我已经更新了方法。

var numbers: [Int] = [1,1,2,3,4,4] // or [1,2,3,4,5,6,7,8]
let maxCount = numbers.filter({$0 == numbers.max()}).count
let minCount = numbers.filter({$0 == numbers.min()}).count

let secondHighest = numbers.filter(){
maxCount > 1 ? $0 == numbers.max() : $0 < numbers.max()
}.last
// prints 4 for [1,1,2,3,4,4] and 7 for [1,2,3,4,5,6,7,8]

let secondLowest = numbers.filter(){
minCount > 1 ? $0 == numbers.min() : $0 > numbers.min()
}.first
// prints 1 for [1,1,2,3,4,4] and 2 for [1,2,3,4,5,6,7,8]

关于iOS - 选择整数数组中第二小的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38945332/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com