递归复杂度计算公式 -- Master公式

什么是 Master Theorem?

Master Theorem 提供了用渐近符号(大O符号)表示许多由分治法得到的递推关系式的方法。这种方法最初由Jon Bentlery,Dorothea Haken和James B. Saxe在1980年提出,在那里被描述为解决这种递推的“天下无敌法”(master method)。此方法经由经典算法教科书Cormen,Leiserson,Rivest和Stein的《算法导论》 (introduction to algorithm) 推广而为人熟知。

Master 公式

假设有递推关系式 T ( n ) = a T ( n b ) + O ( n d ) T(n)=aT(\frac{n}{b}) + O(n^d) T(n)=aT(bn)+O(nd),其中 n n n为问题规模, a a a为递推的子问题数量, n b \frac{n}{b} bn为每个子问题的规模(假设每个子问题的规模基本一样),O(n^d)为递推以外的计算复杂度。

  • d < l o g b a d<log_ba d<logba时,总的时间复杂度为: O ( n l o g b a ) O(n^{log_ba}) O(nlogba)
  • d = l o g b a d=log_ba d=logba时,总的时间复杂度为: O ( n d ∗ l o g n ) O(n^d*{logn}) O(ndlogn)
  • d > l o g b a d>log_ba d>logba时,总的时间复杂度为: O ( n d ) O(n^d) O(nd)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NLP_wendi

谢谢您的支持。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值