假設(shè)當(dāng)前存在一個 int 類型的數(shù)組 number,該數(shù)組中的元素依次是 13、15、 24、99、4 和 1。如果使用冒泡排序進(jìn)行兩兩相鄰比較,第 一趟排序后的結(jié)果如下:
13、15、24、4、1、99
第二趟排序后的結(jié)果如下:
13、15、4、1、24、99
第三趟排序后的結(jié)果如下:
13、4、1、15、24、99
第四趟排序后的結(jié)果如下:
填寫下面表單即可預(yù)約申請免費試聽java課程!害怕學(xué)不會?助教陪讀,隨時解惑!擔(dān)心就業(yè)?一地學(xué)習(xí),可全國推薦就業(yè)!
4、1、13、15、24、99
第五趟排序后的結(jié)果如下:
1、4、13、15、24、99
使用選擇排序法也可以對上述數(shù)組中的元素進(jìn)行排序,但是它與冒泡排序不同。選擇排序是指每一趟從待排序的數(shù)據(jù)元素中選出最大(或最小)的一個元素,順序放在已排好序的數(shù)列的最后,直到全部待排序的數(shù)據(jù)元素排完。例如,使用選擇排序法重新對 number 數(shù)組中的元素進(jìn)行排序,那么第 一趟排序后的結(jié)果如下:
13、15、24、1、4、99
第二趟排序后的結(jié)果如下:
13、15、4、1、24、99
第三趟排序后的結(jié)果如下:
13、1、4、15、24、99
第四趟排序后的結(jié)果如下:
4、1、13、15、24、99
第五趟排序后的結(jié)果如下:
1、4、13、15、24、99
例 1
利用選擇排序方法通過編程的方式實現(xiàn)對 number 數(shù)組的排序,并輸出已排序的數(shù)組元素。代碼如下:
int[] number = {13,15,24,99,4,1};
String end = "\n";
int index;
for (int i = 1;i < number.length;i++) {
index = 0;
for(int j = 1;j <= number.length-i;j++) {
if (number[j] > number[index]) {
index = j; // 查找最大值
}
}
end = number[index] + " " + end; // 定位已排好的數(shù)組元素
int temp = number[number.length-i];
number[number.length-1] = number[index];
number[index] = temp;
System.out.print("【");
for (int j = 0;j < number.length-i;j++) {
System.out.print(number[j]+" ");
}
System.out.print("】"+end);
}
執(zhí)行上述代碼,查看每一趟排序后的結(jié)果,運行結(jié)果如下所示。
【13 15 24 1 4 】99
【13 15 4 1 】24 99
【13 1 4 】15 24 99
【4 1 】13 15 24 99
【1 】4 13 15 24 99
下一篇: 沒有了
初級會計職稱中級會計職稱經(jīng)濟師注冊會計師證券從業(yè)銀行從業(yè)會計實操統(tǒng)計師審計師高級會計師基金從業(yè)資格稅務(wù)師資產(chǎn)評估師國際內(nèi)審師ACCA/CAT價格鑒證師統(tǒng)計資格從業(yè)
一級建造師二級建造師消防工程師造價工程師土建職稱房地產(chǎn)經(jīng)紀(jì)人公路檢測工程師建筑八大員注冊建筑師二級造價師監(jiān)理工程師咨詢工程師房地產(chǎn)估價師 城鄉(xiāng)規(guī)劃師結(jié)構(gòu)工程師巖土工程師安全工程師設(shè)備監(jiān)理師環(huán)境影響評價土地登記代理公路造價師公路監(jiān)理師化工工程師暖通工程師給排水工程師計量工程師
人力資源考試教師資格考試出版專業(yè)資格健康管理師導(dǎo)游考試社會工作者司法考試職稱計算機營養(yǎng)師心理咨詢師育嬰師事業(yè)單位教師招聘公務(wù)員公選考試招警考試選調(diào)生村官
執(zhí)業(yè)藥師執(zhí)業(yè)醫(yī)師衛(wèi)生資格考試衛(wèi)生高級職稱護士資格證初級護師主管護師住院醫(yī)師臨床執(zhí)業(yè)醫(yī)師臨床助理醫(yī)師中醫(yī)執(zhí)業(yè)醫(yī)師中醫(yī)助理醫(yī)師中西醫(yī)醫(yī)師中西醫(yī)助理口腔執(zhí)業(yè)醫(yī)師口腔助理醫(yī)師公共衛(wèi)生醫(yī)師公衛(wèi)助理醫(yī)師實踐技能內(nèi)科主治醫(yī)師外科主治醫(yī)師中醫(yī)內(nèi)科主治兒科主治醫(yī)師婦產(chǎn)科醫(yī)師西藥士/師中藥士/師臨床檢驗技師臨床醫(yī)學(xué)理論中醫(yī)理論