先上代码,晚上回来补说明
package main
import "fmt"
func main() {
var srcArr = []int{7, 2, 1, 9, 5, 3, 6, 8}
//依次取出2->lenth的元素,放入合适的位置
for i := 1; i < len(srcArr);i++ {
key := srcArr[i];
//寻找适合插入的位置
j := i - 1
//确定插入位置
for ;j >= 0 && srcArr[j] > key; {
srcArr[j+1] = srcArr[j]
j--
fmt.Print(srcArr, "\n")
}
//将key插入
srcArr[j + 1] = key
}
}
网友评论