程式設計-選擇排序

流程圖軟體 Draw.io ( Flowchart )

算法可以被定義成「解決問題的方法」,其實在日常生活中演算法的運用隨處可見例如:對發票,請想一想你如何用最快的速度對發票?

以下部分資料取自 江翠國中 呂天齡老師

選擇排序可以說是最簡單、最直觀的排序演算法了, 它演算法的概念很簡單,一個一個檢查未排序的資料,找最小(或最大)的從頭開始排,如此重複執行到結束。

假設有一個 [41, 33, 17, 80, 61, 5, 55] 的陣列,我們用圖的例子來一步一步理解選擇排序是如何進行,在下面的圖中,我們把尚未排序好的數字用紅色標示,這輪找到的最小值以橘色標示,排序好的以藍色標示。

作業1:假設有一個 [53, 20, 8 , 98, 66, 11, 32] 的陣列,請在EXCEL中用選擇排序法遞增排序列出每一個回合的步驟

作業2:假設有一個 [2, 10, 18 , 35, 85, 26, 27] 的陣列,請在EXCEL中用選擇排序法遞增排序列出每一個回合的步驟

考試題目:請設計一個選擇排序的程式,電腦會隨機亂數取出8個數字,然後按下貓咪後電腦會以遞減排序的方式把數字排列出來。貓咪每一回合都會說出目前取出的最大值是?最後會說出排序後的全部數字。