package main
import "fmt"
func main() {
var arr = []int{9, 7, 6, 8, 4, 1, 5, 2, 3}
for i := len(arr) - 1; i > 0; i-- {
for j := 0; j < len(arr)-1; j++ {
if arr[j] > arr[j+1] {
swap(arr, j, j+1)
}
}
fmt.Printf("arr: %v\n", arr)
}
}
func swap(arr []int, a, b int) {
var temp = arr[a]
arr[a] = arr[b]
arr[b] = temp
}
输出
arr: [7 6 8 4 1 5 2 3 9]
arr: [6 7 4 1 5 2 3 8 9]
arr: [6 4 1 5 2 3 7 8 9]
arr: [4 1 5 2 3 6 7 8 9]
arr: [1 4 2 3 5 6 7 8 9]
arr: [1 2 3 4 5 6 7 8 9]
arr: [1 2 3 4 5 6 7 8 9]
arr: [1 2 3 4 5 6 7 8 9]