//選擇排序
int[] ss = new int[]{2, 5, 2, 99, 43, 44, 56, 25};
selectSort(ss);
System.out.println(Arrays.toString(ss));
}
public static void selectSort(int[] a) {
//選擇排序是在數(shù)組中,首先定義兩個變量
int temp = 0;//為了存選擇的最小的數(shù)組中的數(shù)字
int index = 0;//這個是記錄數(shù)組中數(shù)字的下標,這里不是做冒泡,所以需要一個變量存起來做記錄
for (int i = 0; i < a.length - 1; i++) {//外層需要-1是因為:用的小于號,需要比下標位置-1, 最后一個不需要插入的,已經(jīng)是最大的了
index = i;//每次循環(huán)都要排除已經(jīng)插入的下標,所以先index=i
for (int j = i + 1; j < a.length; j++) {//i的數(shù)字+1,兩個下標做對比,j++
if (a[j] < a[i]) {//如果j下標小于i
index = j;//把j的值賦值給index,記錄最小數(shù)字的下標
}
}
temp = a[index];//按照最小數(shù)字的下標取到數(shù)字,存到temp變量中
a[index] = a[i];//把做比較的大的下標i的數(shù)字放到最小下標的位子上
a[i] = temp;//把取到的最小的值放到最前面i的位子上
//完成替換
}
}
java算法_選擇排序
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 概述 排序算法有好多種,也在特殊的場景中,我們經(jīng)常需要對我們的數(shù)據(jù)進行排序,這里對經(jīng)典的排序做一個記錄整理。 一冒...