氣泡排序原理圖:
氣泡排序**:/*
* 陣列排序之氣泡排序:
*
相鄰元素兩兩比較,大的往後放,第一次完畢,最大值出現在了最大索引處 */
public
classarraydemo ;
system.out
.println("
排序前:
");printarray(arr);/*
//第一次比較
- 1
是為了防止資料越界
- 1 - 0
是為了減少比較的次數
for(int x = 0; x < arr.length - 1 - 0; x++) }
system.out.println("
第一次比較後:
");
printarray(arr); //
第二次比較
- 1
是為了防止資料越界
- 1 - 1
是為了減少比較的次數
for(int x = 0; x < arr.length - 1 - 1; x++) }
system.out.println("
第二次比較後:
");
printarray(arr); //
第三次比較
- 1
是為了防止資料越界
- 1 - 2
是為了減少比較的次數
for(int x = 0; x < arr.length - 1 - 2; x++) }
system.out.println("
第三次比較後:
");
printarray(arr); //
第四次比較
- 1
是為了防止資料越界
- 1 - 3
是為了減少比較的次數
for(int x = 0; x < arr.length - 1 - 3; x++) }
system.out.println("
第四次比較後:
");
printarray(arr); */
// 既然聽懂了,那麼上面的**就是排序**
// 而上面的**重複度太高了,所以用迴圈改進
// for (int y = 0; y < 4; y++)
// }
// } /*
//由於我們知道比較的次數是陣列長度
-1次,所以改進最終版程式
for(int x = 0; x < arr.length - 1; x++) }
}system.out.println("
排序後:
");
printarray(arr); */
//由於我可能有多個陣列要排序,所以我要寫成方法
bubblesort(arr);
system.out
.println("
排序後:
");printarray(arr);}//
氣泡排序**
public
static
voidbubblesort(intarr)}}
}//
遍歷功能
public
static
voidprintarray(intarr)else
}system.out
.println("]");}}
執行結果:
排序前:
[24,69, 80, 57, 13]
排序後:
[13,24, 57, 69, 80]
氣泡排序 氣泡排序法
冒泡法是一種簡單的排序方法,它的實現非常簡單。首先對n個專案進行掃瞄,比較相領兩個專案的大小,若發現違背大小次序則進行互換,由此可以使n個專案中的最大者換到最後。然後對剩下的未排序好的專案再進行掃瞄,使它們的最大者換到表的最後。以此類推,直到將表全部排序好為止。這種排序方法,每遍掃瞄以後,都縮短了待...
排序 氣泡排序法
氣泡排序法,是最簡單的一種排序方法,從第乙個位置開始與相鄰位置比較,判斷是否需要交換位子。第一趟從第乙個位置開始,直到最後乙個位置,a n 1 確定最大 以公升序為例子 的數放在最後一位,a n 1 第二趟,繼續從第乙個位置開始,倒數第二位,a n 2 確定倒數第二大的數在倒數第二位a n 2 演算...
氣泡排序法
從小到大排序 int myarray new int 取長度最長的片語 冒泡法 for int j 1 jfor int i 0 i 如果 myarray i myarray i 1 則 myarray i 上浮一位 if myarray i myarray i 1 從大到小排序 int myarr...