八大排序算法(1)——冒泡排序

一、原理:
兩兩比較,第一次將最大值放到數組最後,第二次將第二大值放到數組倒數第二位置,循環往復

二、代碼實現

private void BubbleSort(int[] array) {
	//i < arr.length-1是因爲排序的時候最後一個不用遍歷,因爲只有一個值
	//外層遍歷第幾次代表最後找出了第幾大的數據,放在倒數第幾位
	for(int i = 0; i < array.length-1; i++) {
		
		Boolean flag = false;//該輪循環是否發生過換位
		for(int j = 0; j < array.length-1-i; j++) {
							
			if(array[j] > array[j+1]) {
				int x = array[j];
				array[j] = array[j+1];
				array[j+1] = x;
				flag = true;
			}
			
		}
		//如果該輪循環未發生過換位,則代表已經排序完畢,停止遍歷
		if(!flag) {
			break;
		}
	}		
	System.out.println(Arrays.toString(array));		
}

三、時間複雜度
在這裏插入圖片描述

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