八大排序算法(2)——選擇排序

一、原理
兩元素之間一一對比,不進行位置交換,對比完畢挑選出最小值,將最小值與第一個位置元素進行交換。
同理,挑選出第二小的值,與第二個位置元素進行交換交換,循環往復

二、代碼實現

private void selectionSort(int[] array) {
	for(int i = 0; i < array.length; i++) {
		//index即爲最小值位置記錄
		int index = i;
		for(int j = i + 1; j < array.length; j++) {
			if(array[index] > array[j]) {
				index = j;
			}
		}
		//若最小值角標不是i,則說明i位置不是最小值,需要進行交換
		if(index != i) {
			int y = array[i];
			array[i] = array[index];
			array[index] = y;
		}
	}		
	System.out.println(Arrays.toString(array));
}

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

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