我正在try 对围棋中的一片整数进行反向排序.

  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

推荐答案

对于对几个整数进行排序,sort.Ints是一个方便的函数.通常,如果您想对某些东西进行排序,则需要实现sort.Interface接口,而sort.Reverse只返回该接口的另一个实现,该接口重新定义了Less方法.

幸运的是,sort包包含一个名为IntSlice的预定义类型,它实现了sort.接口:

keys := []int{3, 2, 8, 1}
sort.Sort(sort.Reverse(sort.IntSlice(keys)))
fmt.Println(keys)

Go相关问答推荐

golang 的条件储存库

+在具有html/模板Golang的Base64中

在不耗尽资源的情况下处理S3文件下载

如何使用Gio设置标题栏图标

从MySQL/GO表获取行数据

如何在链接中写入链接

如何用';贪婪原则';正确地

Kusto Go API 从多个表查询

为什么 mux.Vars() 返回空的 map[]

如何将Golang测试用例的测试覆盖率值与特定阈值进行比较

Global Thread-local Storage 在 Go 中的可行性和最佳实践

无法从主域访问子域:无Access-Control-Allow-Origin

在本地 go 应用程序上获取秘密的正确策略

函数实现接口时的模式名称是什么?

访问传递给可变参数函数的通用 struct 的特定字段

如何将一片十六进制字节转换为整数

使用 Golang 在字符串中循环重复数据

每次有人进入我的网站时如何运行特定功能?

Golang:每个键具有多个值的映射

(如何)我可以基于接口抽象地实现Stringer吗?