C++編程基礎題解:選擇排序

題目描述

從鍵盤輸入n個整數,用選擇排序法將他們按從小到大的順序排列後輸出。

輸入

輸入文件包含兩行,第1行為一個正整數n,n<=10000,第2行為n個整數。

輸出

輸出文件僅一行,為排好序的n個數。數字之間用空格分開

樣例輸入

8

49 38 65 97 76 13 27 49

樣例輸出

13 27 38 49 49 65 76 97

基本思想:每一趟從待排序的數據元素中選出最小(或最大)的一個元素,順序放在待排序的數列的最前,直到全部待排序的數據元素排完。對於樣例數據:

初 始 關鍵字 [49 38 65 97 76 13 27 49]

第一趟排序後 13[38 65 97 76 49 27 49]

第二趟排序後 13 27[65 97 76 49 38 49]

第三趟排序後 13 27 38 [97 76 49 65 49]

第四趟排序後 13 27 38 49 [76 97 65 49]

第五趟排序後 13 27 38 49 49 [97 65 76]

第六趟排序後 13 27 38 49 49 65 [97 76]

第七趟排序後 13 27 38 49 49 65 76 [97]

最後排序結果 13 27 38 49 49 65 76 97

參考程序和運行結果:

C++編程基礎題解:選擇排序

C++編程基礎題解:選擇排序


分享到:


相關文章: