概念
什麼是冒泡排序,冒泡排序就是比較相鄰之間的兩個元素,如果前者比後者大,那麼就交換這兩個元素的位置,一直比較到最後一個元素。然後再重複這樣的操作,一直到沒有任何一個元素的位置發生改變,說明冒泡排序已完成。
元素比較詳情請看下圖:
冒泡排序元素比較圖
其比較動態圖效果如下:
冒泡排序比較動態效果圖
上面我們已經瞭解了冒泡排序的原理,下面我們用Java代碼來實現冒泡排序的過程,本文來源於公衆號:【Java學習提升】 專注於Java領域技術分享,Java知識體系學習、分享面試經驗,讓我們結伴而行,共同成長!
public class Maopao {
public static void main(String[] args) {
//定義一個數組,元素分別爲5, 3, 9, 1, 2
int[] intArr = new int[]{5, 3, 9, 1, 2};
//外層循環-冒泡排序從頭開始排序的趟數
for (int i = 0; i < intArr.length - 1; i++) {
//每一趟需要排序多少次
for (int j = 0; j < intArr.length - 1 - i; j++) {
if (intArr[j] > intArr[j + 1]) {
int temp = intArr[j];
intArr[j] = intArr[j + 1];
intArr[j + 1] = temp;
}
}
}
System.out.println("排序後的數組爲:");
for (int num : intArr) {
System.out.print(num + " ");
}
}
}
上述代碼運行的原理爲:
---初始順序---
5, 3, 9, 1, 2
---第一趟完成後的順序---
3, 5, 1, 2, 9
---第二趟完成後的順序---
3, 1, 2, 5, 9
---第三趟完成後的順序---
1, 2, 3, 5, 9
---第四趟完成後的順序---
1, 2, 3, 5, 9
---排序完成---
運行結果如下
冒泡排序運行結果
注:文章部分圖片來自於互聯網,如有爭議請聯繫我刪除,謝謝。
原創聲明:本文爲【Java學習提升】原創博文,轉載請註明出處。
本文來源於公衆號:【Java學習提升】 專注於Java領域技術分享,Java知識體系學習、分享面試經驗,讓我們結伴而行,共同成長