从无序序列头部开始,进行两两比较,根据大小交换位置,直到最后将最大(小)的数据元素交换到了无序队列的队尾,从而成为有序序列的一部分;下一次继续这个过程,直到所有数据元素都排好序。
func bubbleSort() {
aa := []int{2, 5, 12, 3, 7, 4, 21, 15, 16, 22, 21}
for i := 0; i < len(aa); i++ {
for j := 1; j < len(aa)-i; j++ {
if aa[j] < aa[j-1] {
aa[j], aa[j-1] = aa[j-1], aa[j]
}
}
}
fmt.Println(aa)
}