相关概念
分治递推关系:如果f(n)f(n)表示求解规模为nn的问题所需的云算数,则ff满足递推关系
f(n)=af(n/b)+g(n)
f(n)=af(n/b)+g(n)
相关定理
【定理1】设ff是满足递推关系
f(n)=af(n/b)+c
f(n)=af(n/b)+c
的增函数,其中nn被bb整除,b≥1,bb≥1,b是大于1的正整数,cc是一个正实数。那么
f(n)={O(nlogab)a>1O(logn)a=1
f(n)={O(nlogba)a>1O(logn)a=1
而且,当n=bkn=bk(其中k是正整数),a≠1a≠1时
f(n)=C1nlogab+C2
f(n)=C1nlogba+C2
其中C1=f(1)+c/(a−1),C2=−c/(a−1)C1=f(1)+c/(a−1),C2=−c/(a−1)
【定理2(主定理)】设ff是满足递推关系
f(n)=af(n/b)+cnd
f(n)=af(n/b)+cnd
的增函数,其中n=bk,kn=bk,k是一个正整数,a≥1,ba≥1,b是大于1的整数,cc和dd是实数,满足cc是正的且bb是非负的。那么
f(n)=⎧⎩⎨⎪⎪O(nd)a<bdO(ndlogn)a=bdO(nlogab)a>bd
f(n)={O(nd)a<bdO(ndlogn)a=bdO(nlogba)a>bd
可见,主定理是定理1的一般性推广。
————————————————
版权声明:本文为优快云博主「MyLinChi」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/mylinchi/article/details/79141535