簡體   English   中英

算法T(n)= T(n-1)+2

[英]Algorithmic T(n) = T(n-1)+2

我如何在該方程式上應用主定理?

如果T(1)= 1且

T(n)= T(n-1)+2

這樣的程序的運行時間是多少? T(1)= 1是什么? 這是什么情況,為什么? 請詳細說明。 謝謝。

您不能在此處使用Master定理(至少沒有變量替換),因為它的格式不正確。

但是,您的函數易於分析,位於Theta(n)

通過歸納證明,對於每個k<nT(k) <= 2k

T(n) = T(n-1) + 2 <= 2(n-1) + 2 = 2n -2 + 2 <= 2n
                   ^
               induction 
               hypothesis

歸納的基礎是T(1) = 1 <= 2

上面顯示了T(n)O(n) ,因為我們發現c=2使得對於n>0 ,以下是正確的: T(n) <= c*n ,這是big定義O符號

類似地證明T(n)Omega(n)很容易,由此您可以得出結論T(n)Theta(n)

謝謝您的幫助。 因此,在您的回答和一個新的遞歸方程的幫助下,我想我終於明白了。 可以說我有T(N)= 1 * T(n-1)+ n ^ 2。 主定理在這里也不適用,因此我有基本情況。

T(1) = 1
T(2) = 5
T(3) = 14
T(4) = 30

--> Proof by induction, T(k) <= 2k for each k<n

T(n) = T(n-1) + n^2 <= n^2(n-1) + n^2 = n^3 - n^2 + n^2 = n^3
                    ^
                induction 
                hypothesis
So this leads to O(N^3) ? not sure about this. Why not Omega or Theta.

我的假設/歸納何時為<,>或> =。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM