2014-10-05 131 views
0

這是一個CS問題,但希望有人可以幫助我。如果一個特定的算法具有T(100)= 20的運行時間,那麼我怎樣才能估計給定的T(400)的運行時間:a)T(n)= O(n)或b)T(n)= 0 n^2)?對於a,我想如果100個元素需要20個單位(空間或時間),那麼線性400個元素需要大約80個單位。這種想法是否正確?如果是這樣,b)怎麼辦?如果不是,那麼計算這個值的正確方法是什麼?謝謝 !計算算法運行時?

+0

那麼,O(n)表示漸近邊界......所以這意味着將它從100增加到400,很可能根本不準確。但是,只有那些數據,我想你可以做的不多。 – 2014-10-05 06:32:16

回答

2

做一些假設,像n足夠大,你真正看到的漸進性和算法是歐米茄(n)和歐米茄(N^2)分別爲,你會繼續這樣的:

A)T( n)= c * n;假設T(100)= 20,我們發現c = 0.2並且T(400)= 80 0)T(n)= c * n^2; T(100)= 20→c = 0.002; T(400)= 320