深入淺出JAVA冒泡排序

JAVA冒泡排序

public class A {
	public static void main(String[] args) {
		int[] arr = { 14, 44, 10, 42, 2, 22, 3, 44 };
		//有幾個數需要比較,2個數比較1次,3個數比較兩次,n個數比較n-1次,所以循環條件是arr.length-1。
		for (int i = 0; i < arr.length - 1; i++) {
			//每個數需要比較幾次,第1個數比較數組長度-1次,第2個數比較數組長度-2次,第n個數比較數組長度-n,又因爲數組下標從0開始,所以循環條件是arr.length-1-i。
			//每一輪比較都使得當前循環內最大的一個數移到數組下標arr.length-2-i的位置。
			for (int j = 0; j < arr.length - 1 - i; j++) {
				if (arr[j] > arr[j + 1]) {
					//臨時變量接收大的值;
					int temp = arr[j];
					//把小的值放到前面;
					arr[j] = arr[j + 1];
					//把大的值放到後面。
					arr[j + 1] = temp;
				}
			}
		}
		for (int i = 0; i < arr.length; i++) {
			System.out.print(arr[i] + (i==arr.length-1 ?"":"<="));
		}
	}
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章