首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何找到这个递归的渐近紧界?T(n) = T(n-2) + (n/2)

我如何找到这个递归的渐近紧界?T(n) = T(n-2) + (n/2)
EN

Stack Overflow用户
提问于 2021-03-29 00:48:38
回答 1查看 161关注 0票数 1

T(n-2)部分让我有点困惑,因为如果我找到T(n-2)并将其替换为T(n) = T(n-2) + into (n/2),对于这一部分,k=2还是3?

另外,T(n-1)会发生什么?

我是不是不承认它,或者我应该如何应用它来解决这个递归?

我该如何处理这个递归并解决它?(我使用替换方法接近它,但不确定如何解决它)

代码语言:javascript
复制
T(n) = T(n-2) + nlog(n/2)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-29 13:43:07

递推关系的解由两个独立的部分组成,即偶数项和奇数项。您需要两个初始值,一个用于T_0,另一个用于T_1。

甚至可以考虑n,然后考虑k=n/2T(n) = T(2k)。让F(k) = T(2k)来吧。我们的等式变成了

代码语言:javascript
复制
F(k) = F(k-1) + 2 k log(k)
     = 2 k log(k) + 2 (k-1) log(k-1) + .. 2 1 log(1) + T_0
     = 2 sum i log(i) + T_0

现在我们知道在sum log(i) < log(k)中,所以我们得到

代码语言:javascript
复制
F(k) < 2 log(k) sum i + T_0
     = 2 log(k) k * (k+1) / 2 + T0
     = log(k) k * (k+1) + T_0
     = O(k^2 log(k))

因此,对于偶数n:

代码语言:javascript
复制
T(n) = O(n^2 log(n))

对于奇数n,证明同样的成立是相似的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66843838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档