函数 T(n) = T(n//3)) + 1 的时间复杂度是多少

问题描述

这个函数的复杂度是多少?

T(n) = T(n/3) + 1

答案是 O(n)。但是步骤如何?

好的,这就是我的答案:

T(n) = T(n/3) + 1

在这里使用主定理,

所以它得到了 T(n) = aT(n/b) + f(n)

比较 n^logb(a) 和 f(n)

a = 1,b = 3

n^logb(a) = n^log3(1)
          = n^0
          = 1
f(n) = Θ(n^logb(a))

所以我得到的解决方案是 T(n) = Θ(logn)

这是我的答案,但是当我搜索它时,它说答案T(n) = Θ(n) ?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)