go标准库-Sort
Contents
go语言中文网有很多文档缺少内容比如string.Builder就没有,godoc绝对详尽,推荐阅读godoc
type Interface interface
方法
|
|
函数
- func Slice(x any, less func(i, j int) bool):这个函数最重要,使用less来对切片s排序,可以用这个来进行复杂排序,还可以用来翻转数组
- func Sort(data Interface):Sort排序data。
- func Stable(data Interface):相当于稳定的Sort
- func IsSorted(data Interface) bool:报告data是否已经被排序。
- func Reverse(data Interface) Interface:Reverse包装一个Interface接口并返回一个新的Interface接口,对该接口排序可生成递减序列。常用方法:
sort.Sort(sort.Reverse(sort.IntSlice(s)))
- func Ints(a []int):将a排序为递增顺序
- func Float64s(a []float64):将a排序为递增顺序
- func Strings(a []string):将a排序为递增顺序
- func SearchInts(a []int, x int) int:返回a中最左x值索引或者插入点
type IntSlice []int
除了Interface的三个方法外,还有2个方法
- func (p IntSlice) Sort()
- func (p IntSlice) Search(x int) int
type Float64Slice []float64
- func (p Float64Slice) Sort()
- func (p Float64Slice) Search(x float64) int
type StringSlice []string
- func (p StringSlice) Sort()
- func (p StringSlice) Search(x string) int