簡體   English   中英

遞歸關系的時間復雜度 T(n) = T(n-1)*n

[英]Time Complexity for the recurrence relation T(n) = T(n-1)*n

我需要以下遞歸關系的幫助。

T(1) = 1

T(n) = T(n-1)*n

這是我嘗試過的。 我想我可能搞砸了替換部分,但請再次查看讓我知道我得到的時間復雜度是否正確。

T(n) = T(n-1)*n               T(n-1) = T(n-2)*n-1
T(n) = [T(n-2)*(n-1)]*n
T(n) = T(n-2)*(n-1)*n
T(n) = [T(n-3)*n-2]*(n-1)*n
T(n) = T(n-3)*(n-2)*(n-1)*n
...
...
...
T(n) = T(n-k)*(n-(k-1))*(n-(k-2))...*(n-1)*(n)

Assuming n-k=0, n=k

T(n) = T(n-n)*(n-n+1)*(n-n+2)...*(n-1)*(n)
T(n) = T(0)*(1)*(2)...*(n-1)*n

O(n^2)

現在我不確定我所做的是否完全正確,但我們將不勝感激。

只有最終的復雜性是錯誤的,你最終會得到 O(n.)。

遞歸關系必須是 T(n) = T(n-1)+n 以獲得 O(n^2) 作為復雜度。

很接近! 您已經正確地確定了復雜性是

n * (n - 1) * (n - 2) *... * 3 * 2 * 1。

但是,這不是 O(n 2 )。 如果您添加術語而不是將它們相乘,則將是 O(n 2 )。

你把從 1 到 n 的所有自然數的乘積稱為什么?

暫無
暫無

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

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