Merge Sort 視覺化

互動排序演算法教學

← 回到首頁

輸入區

尚未開始

統計

0
比較
0
合併

演算法說明

合併排序採用分治法,先將陣列一分為二、遞迴排序左右兩半,最後再將兩個已排序子陣列合併。

偽代碼:

MERGE-SORT(A, l, r)
  if l < r
    m = floor((l+r)/2)
    MERGE-SORT(A, l, m)
    MERGE-SORT(A, m+1, r)
    MERGE(A, l, m, r)

複雜度:最佳/平均/最壞皆 O(n log n)、空間 O(n)

優點:穩定且效能穩定,適合大資料;缺點:需要額外記憶體,實作較複雜。