Go的排序
引入
1 | import "sort" |
几个内置类型
都是从小到大
1 | sort.Ints() |
反向
1 | s := []int{5, 2, 6, 3, 1, 4} // unsorted |
自定义排序
不稳定版本
1 | sort.Slice(arr, func(a, b int) bool { |
稳定版本
1 | sort.SliceStable(arr, func(a, b int) bool { |
Search:二分查找
返回第一个满足的索引
1 | arr := []int{1, 2, 3, 4, 5} |
- 如果第一个就满足,则返回0
- 如果都不满足,则返回
len(arr)
的值