比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。
對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
針對所有的元素重複以上的步驟,除了最後乙個。
持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。
public static void bubblesort(int arr) }}
}
氣泡排序的最好時間複雜度為o(n),最壞時間複雜度為o(n²),平均時間複雜度為o(n²),空間複雜度為o(1),它是一種穩定的排序演算法。 氣泡排序演算法 細說氣泡排序及其五種優化演算法
01氣泡排序 氣泡排序演算法思想簡單來說 在內層一次遍歷中,arr j 與 arr j 1 進行比較,如arr j 1 arr j 不改變,反之互換值,保證arr j 儲存著 0 j 1中的最大值,隨一次遍歷當前陣列最大值也下沉至末尾,經過n 1次外層迴圈,可使n 1個元素下沉,最後乙個元素位置確定...
排序演算法 五 氣泡排序(交換排序)
氣泡排序屬於交換排序 基本思想 在待排序數列中,自上而下對相鄰的兩個元素進行比較和調整,小的上冒,大的下沉 時間複雜度 最好情況 正序有序,只需比較n次,o n 最壞情況 反序有序,需要比較 n 1 n 2 1次,故o n n 穩定性 穩定 示例 bubble sort.py def bubble ...
排序五 氣泡排序
氣泡排序是交換排序的一種,交換排序是兩兩比較待排序的資料,交換不滿足次序要求的那對數,直到整個表都滿足次序要求為止。下圖所示為第一趟排序,資料兩兩交換直到末尾 end,可知完成一趟排序後,最後乙個資料為最小值 降序 則第二趟時到end 為止。以此迴圈,直到end 0,排序完成。加入標誌性變數ench...