1、氣泡排序演算法,如果是在完全無序的情況下,則其時間複雜度為o(n^2)
若是在幾近有序的情況下,則推薦使用!
2、第一次,經過與陣列後面的元素的比較,選出乙個最小的數,第二次,選出乙個次小一點的數!
依此,**如下
package 排序;
public class 氣泡排序氣泡排序 ;
for(int i=0;ia[j])
}} for(int i=0;i
所以我們新增乙個bool型別的變數,我們假設如果陣列元素進行了排序,就改變bool值為true,如果一次for迴圈之後,陣列沒有進行排序,就代表陣列的元素已經是有序狀態的了,值為初始值false。之後就退出了,不再進行無意義的for迴圈了,節省了時間
**如下:
package 排序;
public class 改進後的氣泡排序 ;
演算法 排序演算法之氣泡排序
排序演算法系列目錄說明 排序演算法簡介說明 1.定義 將一組雜亂無章的資料按一定的規律順次排列起來。例如 輸入 a1,a2,a3,an 輸出 a1 a2 a3 an 滿足a1 a2 a3 an 排列 2.演算法效能評估術語言 穩定 如果a原本在b前面,而a b時,排序之後a仍然在b的前面。不穩定 如...
演算法 排序演算法之氣泡排序
氣泡排序 bubble sort 也是一種簡單直觀的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。作為最簡單...
排序演算法之氣泡排序
參考 氣泡排序演算法的運作如下 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。針對所有的元素重複以上的步驟,除了最後乙個。持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。若...