算法学习之求解递归式~主定理
一、主定理定义
令a>=1和b>1是常数,f(n) 是一个函数,T(n) 是定义在非负整数上的递归式: T ( n ) = a T ( n / b ) + f ( n ) T(n)=aT(n/b)+f(n) T(n)=aT(n/b)+f(n)其中我们将n/b解释为
⌊ n / b ⌋ 或 ⌈ n / b ⌉ \lfloor n/b \rfloor 或 \lceil n/b \rceil ⌊n/b⌋或⌈n/b⌉那么T(n) 有如下渐进界: 1. 若 对 某 个 常 数 ε > 0 , 有 f ( n ) = O ( n log b a − ε ) ; 1.若对某个常数ε>0,有f(n)=O(n^{\log b^{a-\varepsilon}}) ; 1.若对某个常数ε>0,有f(n)=O(nlogba−ε); 则 T ( n ) = Θ ( n log b a ) 则T(n)=\varTheta(n^{\log b^a})