📜  门| GATE-CS-2009 |第 35 题

📅  最后修改于: 2021-09-25 04:56:14             🧑  作者: Mango

算法的运行时间由以下递推关系表示:

if  n <= 3  then   T(n) = n
    else T(n) = T(n/3) + cn

以下哪一项代表算法的时间复杂度? <预>
(一种) \theta (n)
(二) \theta (n log n)
(C) \theta (n^2)
(四) \theta (n^2log n)

(一) A
(乙)
(C)
(四)答案:(一)
解释:

答案(A)

T(n) = cn + T(n/3) = cn + cn/3 + T(n/9) = cn + cn/3 + cn/9 + T(n/27) 求无穷GP级数之和. T(n) 的值将小于该总和。 T(n) <= cn(1/(1-1/3)) <= 3cn/2 或者我们可以说 cn <= T(n) <= 3cn/2 因此 T(n) = \theta (n)

这也可以使用主定理来解决递归问题。给定的表达式位于定理的情况 3 中。

这个问题的测验