給定下列數列,若以快速排序法(Quick Sort)、選擇排序法(Selection Sort)、堆積
排序法(Heap Sort)、泡沫排序法(Bubble Sort)進行排序。請問下列數列是那一個
排序法排序過程的暫時結果,並說明之。(每小題 5 分,共 20 分)
75 93 32 81 75 89 89 99 25 78 54 75 87 12 75 28
(一)99 93 89 81 78 87 89 75 25 75 54 75 32 12 75 28
(二)25 28 32 75 12 75 54 75 99 78 89 89 87 75 81 93
(三)12 25 28 32 54 75 75 75 75 78 81 87 89 99 93 89
(四)32 75 75 81 89 25 78 54 75 87 12 75 28 89 93 99
答
解法:把排序過程列出跟給出排序暫時結果比對或找數列特性以發現符合那種排序。
(一)
對原始數列75 93 32 81 75 89 89 99 25 78 54 75 87 12 75 28
做最大堆得99 93 89 81 78 87 89 75 25 75 54 75 32 12 75 28
所以是堆排序。
(二)
25 28 32 75 12 75 54 |75| 99 78 89 89 87 75 81 93
基準值是75,所以是快速排序
(三)12 25 28 32 54 75 75 75 75 78 81 87 89 99 93 89
冒泡排序後面的先排好所以不是,用選擇排序
[12 25 28 32 54 75 75 75 75 78 81 87 89 |99 93 89]
(四)[32 75 75 81 89 25 78 54 75 87 12 75 28 |89 93 99]
冒泡排序後面的先排好所以是
沒有留言:
張貼留言
寫下幸福點子吧!