码迷,mamicode.com
首页 > 其他好文 > 详细

重新粗推了一下Master Theorem

时间:2016-05-11 01:16:26      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:

主定理一般形式是T(n) = a T(n / b) + f(n), a >= 1, b > 1。递归项可以理解为一个高度为 logbn 的 a 叉树, 这样 total operation就是  (a ^ logbn) - 1,  右边的f(n)假设为 nc 那么我们对比一下这两项就会发现 T(n)的复杂度主要取决于 logba 与 c 的大小。所以我们才会有接下来的三种case。也需要注意什么时候不可以使用主定理。

Case 1:  c < logba ,   O(n) = n ^ logba  , 意味着我们可以忽略 f(n)

Case 2:  c = logba,    O(n) = nlogk + 1n   ,  k >= 0

Case 3:  c > logba,    O(n) = nc

 

Reference:

https://en.wikipedia.org/wiki/Master_theorem

重新粗推了一下Master Theorem

标签:

原文地址:http://www.cnblogs.com/yrbbest/p/5479932.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!