Merge Sort透過分治法將數列分割成更小的部分,然後合併這些部分以達到排序。以下是「8、70、19、3、50、25、30、10」這個數列使用Merge Sort排序的過程詳細說明:
- 初始數列分割為兩部分:8,70,19,38,70,19,3 和 50,25,30,1050,25,30,10。
- 分割第一部分 8,70,19,38,70,19,3:
- 8,708,70 和 19,319,3。
- 繼續分割成 88、7070 和 1919、33,這些都已是單元素,無需排序。
- 合併 8,708,70 和 3,193,19,結果為 3,8,19,703,8,19,70。
- 分割第二部分 50,25,30,1050,25,30,10:
- 50,2550,25 和 30,1030,10。
- 繼續分割成 5050、2525 和 3030、1010,這些都已是單元素,無需排序。
- 合併 25,5025,50 和 10,3010,30,結果為 10,25,30,5010,25,30,50。
- 最後合併兩大部分 3,8,19,703,8,19,70 和 10,25,30,5010,25,30,50,得到最終排序好的數列 3,8,10,19,25,30,50,703,8,10,19,25,30,50,70。
以上就是整個數列透過合併排序的過程。