選擇排序java實現

zhumeilu發表於2017-12-14

選擇排序,和氣泡排序一樣,都是從第一個元素開始依次和後面的元素比較大小,不同的是選擇排序每次比較之後,不交換位置,而是記錄最小的元素的索引,這樣在一次遍歷完之後在將索引位置的元素與比較的元素交換,這樣可以不用頻繁的交換元素位置. 程式碼:

public static void sort(int[] arr){
	
	for (int i = 0; i < arr.length; i++) {
		int index=i;
		for (int j = i; j < arr.length; j++) {
			if(arr[i]>arr[j]){
				index=j;
			}
		}
		//判斷索引值是否改變,如果改變,則交換元素
		if(index!=i){
			int temp=arr[i];
			arr[i]=arr[index];
			arr[index] = temp;
		}
	}
}
複製程式碼

相關文章