主方法,遞歸算法時間復雜度的計算


一個分治法將原問題分解成 a 個問題規模為 n/b 的子問題。

則  

T(n)={  O(1)   ,n = n0 (n0 為閾值)

   {  a·T(n/b) + f(n)  ,n>n0

前面半部分為排序需要的時間復雜度,后面的f(n)=n^k為合並所需要的時間復雜度

則時間復雜度為:

(1)當 f(n) >n^ log a b 時,T(n)=θ( f(n) )

(2)當 f(n) <n^ log a b 時,T(n)=θ( n^log a b )

(3)當 f(n) =n^ log a b 時,T(n)=θ( n^log a b · log n)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM