【问题标题】:recurrence solving [closed]递归求解[关闭]
【发布时间】:2010-11-07 09:56:53
【问题描述】:

我需要找出当前循环的复杂度:

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

提前感谢任何想法或有用信息的链接

【问题讨论】:

  • 离题 - 不是编程问题。
  • @Oded - 为什么不呢?我猜 OP 有一个递归算法,想计算它的复杂度。
  • @Oded:为什么?这是关于算法的复杂性。
  • @Armen Tsirunyan - 我假设他需要数学方面的帮助。事实是,这个问题没有关于编程,它是纯粹的数学。
  • @Henk:如果是这样呢?然后只应添加作业标签。既然不是,请尊重 OP 并尽可能回答问题。如果你不能,你为什么要关心?

标签: math complexity-theory recurrence


【解决方案1】:

在我上面的 cmets 上展开...

作为现实世界的重复关系,这没有意义。 T(n) 表示解决n 大小问题的运行时间; T(n-1) 表示大小 (n-1) 的运行时间。鉴于您必须先解决大小 (n-1) 的问题,然后才能解决大小 n 的问题(否则它不会是递归),因此运行时必须是 monotonic,因为 n 会增加。

但是,你的表情随着n 上下波动;这没有意义。

这个表达式唯一有意义的方法是,如果我们假设T(n)n 是常数,那么就不会有振荡。事实证明,有一个常数值允许这种情况发生,只需设置T(n) = T(n-1),然后求解。 (请注意,这同样没有意义;我们通常不讨论T(n)绝对值。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-09-17
    • 2019-10-18
    • 2011-11-08
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 2015-07-19
    • 1970-01-01
    相关资源
    最近更新 更多