03.遞歸的時間複雜度

1. 遞歸的時間複雜度

master公式
T(N)=aT(N/b)+O(Nd)if(logba>d)O(Nlogba)if(logba==d)O(Ndlog2N)if(logba<d)O(Nd) T(N)=a*T(N/b)+O(N^d)\\ if(log_b^a > d)O(N^{log_b^a})\\ if(log_b^a==d)O(N^d*{log_2^N})\\ if(log_b^a<d) O(N^d)\\

b是把樣本分爲幾份,a是這個遞歸發生了幾次,除了遞歸外其它的操作時間複雜度爲O(N^d)。例如歸併排序,從中間分成兩部分,所以b=2,左側和右側共兩次執行遞歸,所以a=2,因爲merge過程的操作時間複雜度是n,所以d=1,因此符合master公式的第二個if,所以歸併的時間複雜度就是nlogn

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章