演算法之氣泡排序

2022-02-26 22:33:58 字數 897 閱讀 3195

1:原理

以此比較相鄰的兩個元素,每次比較完畢最大的乙個字跑到本輪的末尾。 

目的:按從小到大排序。 

方法: 

假設存在陣列:72, 54, 59, 30, 31, 78, 2, 77, 82, 72 

第一輪比較相鄰兩個元素,如果左邊元素大於右邊元素,則交換。 

72和54比較的結果就是,54在前,72在後; 

然後72和59比較的結果,59在前,72在後; 

以此類推,第一輪比較之後的結果是:54, 59, 30, 31, 72, 2, 77, 78, 72, 82 

經過第一輪比較,最大的元素跑到了最後乙個,所以第二輪比較,最後乙個元素不需要進行比較了。  

第二輪還是從索引0和1開始比較,只是不許要比較最後乙個了,演算法還是一樣的。第三輪、第四輪以此類推。 

排序之後的結果:2, 30, 31, 54, 59, 72, 72, 77, 78, 82 

2:**

static listlist = new list() ;

static void main(string args)

static void bubble()

}printlist();}}

private static void printlist()

", item));

}console.writeline();

}

3:輸出

4:時間複雜度

根據時間複雜度的計算原則,氣泡排序為:o(n^2 )

演算法 排序演算法之氣泡排序

排序演算法系列目錄說明 排序演算法簡介說明 1.定義 將一組雜亂無章的資料按一定的規律順次排列起來。例如 輸入 a1,a2,a3,an 輸出 a1 a2 a3 an 滿足a1 a2 a3 an 排列 2.演算法效能評估術語言 穩定 如果a原本在b前面,而a b時,排序之後a仍然在b的前面。不穩定 如...

演算法 排序演算法之氣泡排序

氣泡排序 bubble sort 也是一種簡單直觀的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。作為最簡單...

排序演算法之氣泡排序

參考 氣泡排序演算法的運作如下 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。針對所有的元素重複以上的步驟,除了最後乙個。持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。若...