標籤:開始 system str blog span 冒泡排序 out 冒泡 顯示
冒泡排序演算法原理:
- 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個,
- 對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對,
- 針對所有的元素重複以上的步驟,除了最後一個,
- 持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較,
建立方法:
1 //排序方法 2 public void bubble(int[] arr){ 3 //n個數需要n-1趟排序 4 for(int i=0;i<arr.length-1;i++){ 5 //每趟排序比較的次數,減去已經排序過得元素 6 for (int j = 0; j < arr.length-i-1; j++) { 7 //相鄰兩個元素比較,若arr[i]>arr[i+1],交換位置 8 if(arr[j]>arr[j+1]){ 9 int tmp=arr[j];10 arr[j]=arr[j+1];11 arr[j+1]=tmp;12 }13 }14 System.out.println((i+1)+"趟排序"+Arrays.toString(arr));15 }16 System.out.println("排序結果:"+Arrays.toString(arr));17 }18 }
調用方法實現排序:
1 @Test2 public void bubbleSort() {3 int[] arr = {7,6,8,2,9,1,4};4 bubble(arr);5 }
顯示結果:
1趟排序[6, 7, 2, 8, 1, 4, 9]2趟排序[6, 2, 7, 1, 4, 8, 9]3趟排序[2, 6, 1, 4, 7, 8, 9]4趟排序[2, 1, 4, 6, 7, 8, 9]5趟排序[1, 2, 4, 6, 7, 8, 9]6趟排序[1, 2, 4, 6, 7, 8, 9]排序結果:[1, 2, 4, 6, 7, 8, 9]
java實現冒泡排序演算法