package main
import (
“fmt”
)
//交换值函数
func swap(i, j int, a []int) {
a[i], a[j] = a[j], a[i]
}
//冒泡排序实现函数
func BubbleSort(a []int) {
if len(a) == 0 {
return
}
length := len(a)
//循环次数
for i := 0; i < length-1; i++ {
//每一次的比较次数
for j := length - 1; j > i; j-- {
if a[j-1] > a[j] {
swap(j-1, j, a)
}
}
fmt.Println(a)
}
}
func main() {
a := []int{60, 2, 43, 78, 56, 33}
BubbleSort(a)
fmt.Println(a)
}
➜ maobao time go run bubble_sort.go
[2 60 33 43 78 56]
[2 33 60 43 56 78]
[2 33 43 60 56 78]
[2 33 43 56 60 78]
[2 33 43 56 60 78]
[2 33 43 56 60 78]
go run bubble_sort.go 0.16s user 0.13s system 94% cpu 0.316 total