氣泡排序
氣泡排序(bubble sort),是一種電腦科學領域的較簡單的排序演算法。
它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。
一、演算法原理
氣泡排序演算法的運作如下:
1、比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。
2、對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
3、針對所有的元素重複以上的步驟,除了最後乙個。
4、持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較為止。
例如要對乙個陣列進行排序
int numbers=;
氣泡排序:將乙個陣列從大到小或者從小到大進行排序
陣列 從大到小:降序排列
從小到大:公升序排列
對陣列中的資料進行比較。
第一趟:8 7 6 5 4 3 2 1 0 9 第一趟比較 比較了9次 i=0 j=9
第二趟:7 6 5 4 3 2 1 0 8 9 第二趟比較 比較了8次 i=1 j=8
第三趟:6 5 4 3 2 1 0 7 8 9 第三趟比較 比較了7次 i=2 j=7
第四趟:5 4 3 2 1 0 6 7 8 9 第四趟比較 比較了6次 i=3 j=6
第五趟:4 3 2 1 0 5 6 7 8 9 第五趟比較 比較了5次 i=4 j=5
第六趟:3 2 1 0 4 5 6 7 8 9 第六趟比較 比較了4次 i=5 j=4
第七趟:2 1 0 3 4 5 6 7 8 9 第七趟比較 比較了3次 i=6 j=3
第八趟:1 0 2 3 4 5 6 7 8 9 第八趟比較 比較了2次 i=7 j=2
第九趟:0 1 2 3 4 5 6 7 8 9 第九趟比較 比較了1次 i=8 j=1
綜上分析
//外層迴圈控制比較的趟數
for(int i=0;i}}
黑馬程式設計師 陣列 氣泡排序
asp.net unity開發 net培訓 期待與您交流!陣列特點 1 可以幫我們一次宣告多個同型別的變數 2 這些變數在記憶體中是連續儲存的 語法 資料型別 陣列名稱 new 資料型別 陣列長度 舉例 int age new int 5 宣告了乙個長度為5的陣列,陣列叫age 通俗點說 就是宣告了...
黑馬程式設計師 C 氣泡排序 學習筆記
windows phone 7手機開發 net培訓 期待與您交流!氣泡排序 讓陣列中的元素兩個比較,第i個與第i 1個比較,經過n i 1 遍兩兩比較,陣列中的元素能按照我們預期的規律排序。要從大到小排序,我們進行兩兩比較的時候用 又大到小排序 10.20.30.40.50.60.70.80 原始元...
黑馬程式設計師 氣泡排序和選擇排序的區別
asp.net unity開發 net培訓 期待與您交流!它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。如下 public class nums for int i 0 i nums.len...