如果一个算法的时间负载度可以表示成如下式子,则可以使用master公式进行计算
T(n) = a*T(n/b)+O(n^d)
其中 a 指这个过程一共发生了多少次,b指这个问题分成的子问题的个数
O(n^d)表示的就是除了递归意外其余 的时间复杂度
则时间复杂度可以计算:
若log_b(a ) > d, 则 T(n) = O(n^log_b(a ))
若log_b(a ) = d, 则 T(n) = O(n^d * log(n))
若log_b(a ) < d, 则 T(n) = O(n^d)