【发布时间】:2020-05-01 04:36:33
【问题描述】:
我知道使用主定理我会得到 teta(n),但我正在尝试以其他方式解决重复问题,如下所示:
T(n) = T(n/2) + n
T(n) = T(n/4) + 2n
T(n) = T(n/8) + 3n
.
.
.
T(n) = T(n/2^k) + kn
k=logn -> T(1) + **nlogn**
有什么问题?
【问题讨论】:
-
T(n) = T(n/4) + 2n行错误;您添加了n,但您应该添加n/2,因为您替换了T(n/2) = T(n/4) + n/2。 -
如果 k 在 n 中是对数绑定的,那么想想 T 的输入参数如何绑定在 n 中
-
我认为这个问题更适合 cs.stackexchange
标签: algorithm recurrence