【排序】冒泡排序

77 阅读1分钟

go语言版

// BubbleSort 冒泡排序 核心思想:相邻元素比较并交换
func BubbleSort(a []int) []int {
   for i := 0; i < len(a)-1; i++ { // n-1趟交换就行
      for j := 1; j < len(a)-i; j++ { // 每趟交换结束都会安置好一个元素,所以下次遍历就可以少遍历一个元素
         // j初始值1 防止数组越界
         if a[j-1] > a[j] {
            a[j-1], a[j] = a[j], a[j-1]
         }
      }
   }
   return a
}