Q185.
將兩串已經由小而大排序好的資料1,4,7,9,10 與2,3,5,8 合併(Merge)成為一串排序好的資料,需要多少次「比較」(Comparison)?
電腦軟體設計共同科目 · 乙級 · Q185
難易度分析
3 / 5
本題要求模擬合併排序的實際比對過程,而非單純記憶定義。考生必須準確追蹤兩個指標的移動路徑,並掌握其中一組資料耗盡後不再進行比較的演算法特性,對邏輯推演的精準度有一定要求。
正確答案:③7
③ 7:合併演算法的比較過程:1比2→1小、4比2→2小、4比3→3小、4比5→4小、7比5→5小、7比8→7小、9比8→8小,共7次比較後序列二耗盡,剩餘元素直接附加。
錯誤選項解析
- ① 5:合併排序的比較次數計算需追蹤兩序列的逐一比對過程,5次比較不足以完成全部元素的合併。
- ② 6:6次比較仍無法將所有元素正確合併,因為當其中一個序列耗盡時,另一序列剩餘元素無需比較直接放入,但本題需7次才能完成。
- ④ 8:8次比較超過實際所需次數,因為當其中一個序列的所有元素都已合併完成時,剩餘序列的元素無需再比較即可直接附加至結果。
Learning Tip
"合併已排序序列的比較次數範圍介於 min(m,n) 到 m+n-1 之間(m、n為兩序列長度)。本題關鍵在於實際模擬雙指標逐一比較的過程,而非套用固定公式。常考陷阱是誤以為比較次數等於總元素數或簡單相加,必須理解「當一序列耗盡時,另一序列剩餘元素直接附加」的合併排序特性。"
學員答題分佈
①50%
②60%
③70%
④80%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!
相似類型題目
有一整數序列26, 59, 77, 31, 51, 11, 19, 42 以Merge Sort 由小而大排序,第一階段(Pass)的合併結果,下列何者是正確的?
對於排序演算法,下列敘述何者正確?
合併排序法(Merge Sort)可用下列何種策略來解題?
假設排序演算法僅能使用「比較」(Comparison)與 「對調」(Exchange)。讀入資料1,5,4,3,2,利用插入排序法(Insertion Sort)將其由小至大排序,需要多少次對調?
假設排序演算法僅能使用「比較」(Comparison)與 「對調」(Exchange) 。讀入資料1,5,4,3,2,利用插入排序法(Bubble Sort)將其由小至大排序,需要多少次對調?