一個分治法將原問題分解成 a 個問題規模為 n/b 的子問題。
則
T(n)={ O(1) ,n = n0 (n0 為閾值)
{ a·T(n/b) + f(n) ,n>n0
前面半部分為排序需要的時間復雜度,后面的f(n)=n^k為合並所需要的時間復雜度
則時間復雜度為:
(1)當 f(n) >n^ log a b 時,T(n)=θ( f(n) )
(2)當 f(n) <n^ log a b 時,T(n)=θ( n^log a b )
(3)當 f(n) =n^ log a b 時,T(n)=θ( n^log a b · log n)