資料結構與演算法系列 氣泡排序高階

2021-08-20 22:49:51 字數 874 閱讀 8315

首先我們先把演算法給展示出來:如下

/**

* 比較次數 交換次數 變數

(注意,已經排好序的情況)*

*@param

array

*/private static voidsort(intarray)

}if(flag)

system.out.print(""+(i+1)+"論排序結果:");

display(array);

}}

(1)比較次數  交換次數   如果你對演算法比較了解的話你就會發現它的效能是跟這兩個知識是有先關的,
而且他們是成反比的存在的,也就是說比較次數跟交換次數越少,它的效能越高,反之。而我在氣泡排序
裡面講解這兩個知識點也是為日後再學習其他演算法打下基礎。上面的**注釋中標示在哪個環節中存在的。
(2)既然演算法是用來做排序的,那麼乙個集合資料肯定存在不同的順序結構,也就是說我們帶乙個集合或者說是

陣列的資料進行排序的時候,有可能在不進行全部遍歷的情況下就已經把排序給排好了,話句話說就是不用在繼續往下

遍歷了,因為外層每次遍歷一次,至少氣泡排序法內層還需要進行n此遍歷,這樣子大大的提公升了排序的效能,所以我們在**當中加入了乙個變數 flag來表示該集合或者陣列是否拍好了序。

資料結構與演算法系列 排序 8 1 氣泡排序

核心思想 氣泡排序是一種典型的 交換排序 通過比較相鄰元素大小來決定是否交換位置 氣泡排序的思想 不停地比較相鄰的兩個記錄,如果相鄰的兩個記錄的次序是反序則交換,直到所有的記錄都已經排好序了 使關鍵字最小或最大的記錄如氣泡一般逐漸往上 漂浮 直至 水面 所以叫氣泡排序 比較相鄰的元素。如果第乙個比第...

演算法系列 氣泡排序

在我們的生活中,撲克牌應該是每乙個人的娛樂專案之一吧。在我們玩撲克牌的過程中,我們也可以體會到學習的奧秘。我們會根據手裡的牌,從小到大進行排序 即小的牌在前面,大的牌在後面 在這個過程中,我們可以體會並學習氣泡排序的神奇。氣泡排序 臨近的數字兩兩進行比較,按照從小到大或者從大到小的順序進行交換,這樣...

資料結構 排序演算法系列總結

目錄 1 空間複雜度 2 穩定性 3 執行時間 4 目前預設的sort內建函式排序函式 5 六種常用排序方法 空間複雜度產生的原因有兩個 重新定義了一塊空間用於儲存資料 遞迴產生了棧空間 氣泡排序 選擇排序 堆排序和插入排序屬於原地實現排序,因此空間複雜度為常數級別 快速排序,在演算法中雖然沒有使用...