如何对整片 Go 进行反向排序?

我正在尝试在 Go 中对整数切片进行反向排序。


  example := []int{1,25,3,5,4}

  sort.Ints(example) // this will give me a slice sorted from 1 to the highest number

我如何对其进行排序,使其从最高到最低?所以 [25 5 4 3 1]


我试过这个


sort.Sort(sort.Reverse(sort.Ints(keys)))

来源:http : //golang.org/pkg/sort/#Reverse


但是,我收到以下错误


# command-line-arguments

./Roman_Numerals.go:31: sort.Ints(keys) used as value


蛊毒传说
浏览 253回答 2
2回答

料青山看我应如是

sort.Ints是一个方便的函数来对几个整数进行排序。通常,如果要对某些内容进行排序,则需要实现sort.Interface接口,而sort.Reverse仅返回重新定义该Less方法的该接口的不同实现。幸运的是 sort 包包含一个名为IntSlice的预定义类型,它实现了 sort.Interface:keys := []int{3, 2, 8, 1}sort.Sort(sort.Reverse(sort.IntSlice(keys)))fmt.Println(keys)

蓝山帝景

package mainimport (        "fmt"        "sort")func main() {        example := []int{1, 25, 3, 5, 4}        sort.Sort(sort.Reverse(sort.IntSlice(example)))        fmt.Println(example)}输出:[25 5 4 3 1]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go