1. 经典排序
1.1. 选择排序
- 时间复杂度 O(n^2),空间复杂度 O(1)
- 第一次,先找出最小(大)的值,放到第一的位置
- 第二次,找出最小(大)的值,放到第二的位置
显示代码
func selection(nums []int) []int {
var min,k int
numLen := len(nums)
for i:=0;i<numLen;i++ {
for j:=i;j<numLen;j++ {
if j == i || nums[j] < min {
min = nums[j]
k = j
}
}
nums[i],nums[k] = nums[k],nums[i]
}
return nums
}