go实现插入算法

上篇我们简单的解说了插入算法

今天我们用go来实现,代码如下

package main

import "fmt"

func insertSort(a []int){
	shuzu := a
	fmt.Print("排序前")
	fmt.Println(shuzu)
	the_len := len(shuzu)
	var i int
	for i < the_len{
		var tmp = shuzu[i]
		for m:=i-1; m>=0&&shuzu[m]>tmp; m--{
			//shuzu[m+1] = shuzu[m]
			//shuzu[m] = tmp
			shuzu[m],shuzu[m+1] = shuzu[m+1],shuzu[m]//更简单的值互换方式
		}
		i++
	}
	fmt.Print("排序后")
	fmt.Println(shuzu)
}
func main() {
	var shuzu = []int{10,9,7,5,6,3}
	insertSort(shuzu)
}

执行结果如下

排序前[10 9 7 5 6 3]
排序后[3 5 6 7 9 10]

ok,问题解决

猜你喜欢

转载自blog.csdn.net/stronglyh/article/details/81915266
今日推荐