把一群數字排序好的方法有很多,每一種排序都有自己的特性。
現在給你一堆未排序的數字,你每次可以挑選兩個數字交換位置,請你把這些數字從大排到小,並計算最少需要進行幾次的交換才能完成。
第一行輸入一個整數 $n$ 代表人數。 $n \le 100$。
第二行輸入 $1 \sim n$ 號的成績(可以假設所有人的成績都不相同),成績不超過1000分。
第一行輸出最少需要交換的次數。
第二行輸出所有數字從大排到小的結果。
5 50 80 60 70 90
2 90 80 70 60 50
5 50 90 80 70 60
4 90 80 70 60 50
上課教過的選擇排序法是可以讓交換次數最少的方法喔。
以下為選擇排序法 從小排到大 的Python參考程式碼
ID | User | Problem | Subject | Hit | Post Date |
沒有發現任何「解題報告」 |