影片動畫 | 什麼是選擇排序?
- 2019 年 12 月 23 日
- 筆記
簡單選擇排序屬性

選擇排序(Selection sort)是一種簡單直觀的排序演算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

回顧一下上次快速排序的優化,減少不必要的交換,以後在解決過程中可以把符合條件的元素位置標記下來,因此可以定義一個標記變數,來標記本輪比較中最符合條件的元素,本輪結束時才進行最後一步的是否交換。
影片動畫:簡單選擇排序
Code

Result
初始狀態 [5, 1, 9, 3, 7, 4, 8, 6, 2]
下標0,1已交換[1, 5, 9, 3, 7, 4, 8, 6, 2]
下標1,8已交換[1, 2, 9, 3, 7, 4, 8, 6, 5]
下標2,3已交換[1, 2, 3, 9, 7, 4, 8, 6, 5]
下標3,5已交換[1, 2, 3, 4, 7, 9, 8, 6, 5]
下標4,8已交換[1, 2, 3, 4, 5, 9, 8, 6, 7]
下標5,7已交換[1, 2, 3, 4, 5, 6, 8, 9, 7]
下標6,8已交換[1, 2, 3, 4, 5, 6, 7, 9, 8]
下標7,8已交換[1, 2, 3, 4, 5, 6, 7, 8, 9]
——END——
推薦閱讀: