什么是冒泡排序?
冒泡排序(Bubble Sort),是一種計算機科學領域的較簡單的排序算法。
它重復地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重復地進行直到沒有再需要交換,也就是說該數列已經排序完成。
這個算法的名字由來是因為越大的元素會經由交換慢慢“浮”到數列的頂端,故名“冒泡排序”。
package main
import (
"fmt"
)
func main() {
a := [...]int{5,2,6,3,9}
fmt.Println(a)
num := len(a)
for i := 0; i < num; i++ {
for j := i + 1; j < num; j++ {
if a[i] < a[j] {
tmp := a[i]
a[i] = a[j]
a[j] = tmp
}
}
}
fmt.Println(a)
}
---
Mac:array chentiangang$ go run main.go
[5 2 6 3 9]
[9 6 5 3 2]