问题描述:
它重复的走过要排序的元素列,依次比较两个元素,如果他们的顺序错误就把他们交换过来。走访元素的工作是重复的进行知道没有可操作的元素,也就是说该列元素已经排序完成
package main
import "fmt"
func main() {
arr := bubbleSort([]int{1, 3, 4, 2, 6})
fmt.Printf("result %v", arr)
}
func bubbleSort(arr []int) []int {
length := len(arr)
for i := 0; i < length; i++ {
for j := 0; j < length - i - 1; j++ {
if arr[j] > arr[j + 1] {
arr[j], arr[j+1] = arr[j+1], arr[j]
}
}
}
return arr
}