03 选择排序,冒泡排序,sort包排序

选择排序

很经典的算法,在此不再赘述原理

var numSlice=[]int{9, 8, 10, 15, 5, 4}
for i:=0;i<len(numSlice);i++{
for j:=i+1;j<len(numSlice);j++{
if (numSlice[i]>numSlice[j]){
numSlice[i],numSlice[j]=numSlice[j],numSlice[i]
}
}
}

冒泡排序

for i:=0;i<len(numSlice);i++{
for j:=0;j<len(numSlice)-1;j++{
if (numSlice[j]>numSlice[j+1]){
numSlice[j],numSlice[j+1]=numSlice[j+1],numSlice[j]
}
}
}

sort 包排序

intlist:=[]int{9, 8, 12, 3, 6, 8, 4}
floatlist:=[]float64{5.1, 502, 5.3, 6.3, 7.8}
stringlist:=[]string{"a", "b", "c", "4", "5"}

sort.Ints(intlist)
sort.Float64s(floatlist)
sort.Strings(stringlist)


fmt.Println(intlist)
fmt.Println(floatlist)
fmt.Println(stringlist)
sort.Sort(sort.Reverse(sort.IntSlice(intlist))) //降序排列
fmt.Println(intlist)

image