【氣泡排序(bubble sort)】
原理
重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來
走訪數列的工作是重複地進行直到沒有再需要交換,即完成排序
演算法的名字由來是因為越小的元素會經由交換慢慢"浮"到數列的頂端
運作
第一輪比較
1.比較1和2元素,交換或者保持
2.比較2和3元素,交換或者保持
3.以此類推
4.經過第一輪比較,最大的數在最後
第二輪比較
步驟同上,但是最後乙個數字不用參與比較了,因為已經是最大的了
例子
4個元素的陣列
第一輪比較元素1和2、2和3、3和4,最大的數字在第4位,比較了3次
第二輪比較元素1和2、2和3,最大的數字在第3位,比較了2次
第三輪比較元素1和2,最大的數字在第2位,比較了1次
比較幾輪(i)
每輪比較幾次(j)
外層迴圈i表示幾輪,內層迴圈j表示這一輪一共比較幾次
i+j等於陣列的長度
**
public class bubblesort ;
int size = score.length;
int temp = 0;
system.out.print("原始資料: ");
printdata(score);
// i表示迴圈幾輪
for (int i = 0; i < arr.length - 1; i++)
}system.out.print("第" + (i + 1) + "次排序結果:");
printdata(arr);
} }
public static void printdata(int score)
system.out.println("");
}}
結果
原始資料: 100 99 90 89 87 75 69 67
第1次排序結果:99 90 89 87 75 69 67 100
第2次排序結果:90 89 87 75 69 67 99 100
第3次排序結果:89 87 75 69 67 90 99 100
第4次排序結果:87 75 69 67 89 90 99 100
第5次排序結果:75 69 67 87 89 90 99 100
第6次排序結果:69 67 75 87 89 90 99 100
第7次排序結果:67 69 75 87 89 90 99 100
java 排序演算法 氣泡排序
氣泡排序 感覺和選擇排序有點像,每迴圈一次,就能得到迴圈佇列中最小的值,按照江湖規矩,輪武功排行,幾個人先選出來兩個進行比試,贏的和下乙個人接著比,每次都選出來贏的那個人,和下乙個人進行比較,最終選出來的就是武功最nb的那個,那麼他就是老大了,老 出來後,就按照這個辦法,在剩餘的兄弟裡面接著比武吧,...
java演算法 氣泡排序
氣泡排序 它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。氣泡排序 把要排序的陣列截取出一部分,形成新的陣列。新陣列的長度從1開始,每次依次增加1。對新陣列內部相鄰的兩個元素進行比較,如果前面...
Java氣泡排序演算法
在所有的演算法中,氣泡排序演算法是乙個比較基礎的排序的演算法,我的演算法之路,也由此開始。首先來看正確的語法及輸出 public class test01 for int i 1 ia j 1 system.out.print 排序後的陣列為 另乙個正確的例子 public class test01...