← 返回内容列表

归并排序 O(n log n):主定理情况 2 一步出

分享本文
归并排序 O(n log n):主定理情况 2 一步出

T(n)=2T(n/2)+Θ(n) 落在主定理情况 2,直接得到 Θ(n log n),且最坏成立。

归并排序的递推式完美契合主定理,无需展开递归树也能出结果。

归并排序 vs 主定理:恰好落在情况 2T(n) = 2T(n/2) + Θ(n)a=2, b=2 → n^{log_b a} = n^{log₂2} = n临界值 n^{log₂2} = nf(n) = Θ(n) = Θ(n log⁰n)⇒ f(n) 与临界值同阶(k=0)T(n) = Θ(n^{log₂2} log^{0+1}n)= Θ(n log n)(最好/平均/最坏一致)

图:归并排序的递推式恰好落在主定理情况 2

# T(n) = a*T(n/b) + f(n),归并排序:a=2, b=2, f(n)=Θ(n)
# 临界值 n^{log_b a} = n^{log_2 2} = n
# f(n) = Θ(n) = Θ(n * log^0 n) → 情况 2 (k=0)
# ⇒ T(n) = Θ(n^{log_2 2} * log^{0+1} n) = Θ(n log n)

注意这是最坏情况也成立的界。快排虽然也平均 O(n log n),但最坏会退化到 O(n²),而归并没有这个隐患。

相关推荐:递推式与主定理 · 二分查找与主定理

评论 (0)

正文划词可点「问萝卜特」——自动发评论并由 AI 回复

加载评论中…

归并排序 O(n log n):主定理情况 2 一步出 | 必学必会