1.插入排序算法
package main
import(
"fmt"
)
func main() {
data := [...] int {32,2,26,16,50,36,15,20}
var temp,index int
for i := 1; i < len(data); i++ {
temp = data[i]
index = i - 1
for index >= 0 && temp < data[index] {
data[index+1] = data[index]
index--
}
data[index+1] = temp
}
for j := 0; j < len(data); j++ {
fmt.Printf("%d ",data[j])
}
}
结果如下所示:
2 15 16 20 26 32 36 50
2.冒泡排序算法
package main
import (
"fmt"
"time"
"math/rand"
)
func main() {
var array [50]int
rand.Seed(time.Now().UnixNano())
for i := 0;i < len(array);i++ {
array[i] = rand.Intn(100)
}
for j := 0;j < len(array)-1;j++{
for k := j+1;k < len(array);k++ {
if array[j] > array[k] {
temp := array[j]
array[j] = array[k]
array[k] = temp
}
}
}
for _,value := range array {
fmt.Printf("%d ",value)
}
}
结果如下所示:
2 3 3 4 4 4 5 10 11 14 19 25 25 26 26 31 34 35 42 42 42 43 46 46 47 50 51 54 55 58 60 60 61 61 64 66 69 71 72 79 80 81 83 84 88 95 95 95 96 97