理解:(并非严格证明)
Master 定理中的递归函数:
T(n) = aT(n/b) + f(n), (a>=1, b >1)
a: 子项数量的膨胀率 b:规模的收缩率 f(n): 规模为n时常规开销
当递归函数分解成a个子项的时候(规模为n/b),规模缩小为1/b, a个子项的常规开销变为af(n/b),
假设
f(n) = n ** m
则a个子项的常规开销为:
a ((n/b)**m) == a/(b**m) (n**m)
1 如果a/(b**m) == 1 则这时常规开销等同于规模为n时的常规开销, 这时不难看出,在递归的任何一层,所有子项的常规开销和为定值,即为
(n**m)
而递归函数一共有log(b,n)层,则算法复杂度为
(n**m)*log(b,n) = (n**m)*log(2,n)
注意