gpt4 book ai didi

sorting - 如何稳定地反向排序 Go 中的一个 slice ?

转载 作者:数据小太阳 更新时间:2023-10-29 03:39:11 32 4
gpt4 key购买 nike

我有

4, 5', 6, 5''

并且想要反转稳定排序为

6, 5', 5'', 4

但不是

6, 5'', 5', 4

这个(无效的)代码将不起作用

keys := []int{4, 5', 6, 5''}
sort.Stable(sort.Reverse(sort.Ints(keys)))

它会产生:

6, 5'', 5', 4

这里问题被简化为整数 slice ,但实际上我需要将它应用于结构 slice

type myStruct struct {
t time.Time
d time.Duration
}

和基于 t 字段的反向稳定排序。


编辑:经过一些评论后,我明确表示整数 1 是一个无效的示例,以简化问题。

最佳答案

在 slice 类型上实现sort.Interface 接口(interface),这样您就可以选择排序顺序,并对其应用稳定排序。示例:https://play.golang.org/p/TWAtH7asi3

关于sorting - 如何稳定地反向排序 Go 中的一个 slice ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41664250/

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