免費開始練習
moea_joint_essay 104年 [資訊] 資訊管理、程式設計

第 二 題

📖 題組:
有一數列:30、5、37、2、61、8、55、19、46、23 ,欲以快速排序法進行排序,以 30作為第一次比較之鍵值:
📝 此題為申論題,共 2 小題

小題 (二)

請將每次做比較之鍵值列出。(5 分)
第一次比較之鍵值:30
第二次比較之鍵值:
第三次比較之鍵值:
依此類推。

思路引導 VIP

依照上方的排序步驟,記錄下每次處理新區段時選用的 Pivot 值。順序取決於實作時是先遞迴處理左子樹還是右子樹(一般標準皆為先處理左子樹)。 第一次:30

🤖
AI 詳解
AI 專屬家教

(假設按照遞迴先左後右的順序處理子數列,鍵值取子區間最左邊的第一個元素) 第一次比較之鍵值:30(全數列) 第二次比較之鍵值:8(30的左子數列:8, 5, 23, 2, 19)

小題 (一)

請將數列由小至大排列完成為止,寫出排序的步驟。(10 分)

思路引導 VIP

快速排序 (Quick Sort),Pivot = 第一個元素。要求由小至大排。數列:30, 5, 37, 2, 61, 8, 55, 19, 46, 23。 步驟詳解(依據標準左右指標法):

🤖
AI 詳解
AI 專屬家教

使用快速排序法(以第一筆資料為 Pivot 鍵值,由左找大於鍵值、由右找小於鍵值進行交換): 初始數列:[30], 5, 37, 2, 61, 8, 55, 19, 46, 23 【第一次排序】鍵值=30

🏷️ 相關主題

物件導向程式設計與系統分析核心概念
查看更多「[資訊] 資訊管理、程式設計」的主題分類考古題