【问题标题】:Get the Asymptotic Notation of The Run time获取运行时间的渐近符号
【发布时间】:2018-08-14 05:25:03
【问题描述】:

我有下面的运行时:

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

我知道它的上限可以是:O(2^n)

但我找不到它的下界或欧米茄。算法是否可能没有下限?西塔呢?小哦和小欧米茄?

【问题讨论】:

  • 你的 big-O 错了​​。
  • @YvesDaoust--为什么?
  • 检查两个答案。
  • @YvesDaoust 确实没有错。不紧。
  • @OmG:从技术上讲,你是对的。但很明显,OP 误解了表达式。

标签: algorithm runtime time-complexity big-o asymptotic-complexity


【解决方案1】:

1 前面的反指数可以忽略不计,所以Θ(n),这意味着所有其他边界。

【讨论】:

    【解决方案2】:

    作为所有n >= 11- 1/2^n >= 0.5,我们可以说T(n) >= 0.5(n+1)/2 = (n+1) /4。因此,T(n) = \Omega(n)。此外,对于所有n >= 0T(n) <= n + 1,作为1- 1/2^n < 2,我们可以说T(n) = O(n)。因此,我们可以说T(n) = \Theta(n)

    【讨论】:

    • 您是如何在等式 0.25(n+1)/2 中得出 0.25 的?请启发我:)
    • 你为什么要把 (1- (1/2^n)) 和 ((n+1)/2) 分开。它们在同一个等式上。
    • @Eliyah 我将它们拆分以简化1-1/2^n 的部分。因为,方程的这部分可以从它的上和下限定,而(n+1)/2 不能从它的上限定。
    • 好的,我明白了,但你是怎么得出 0.25(n+1)/2 的?对不起,请让我理解这一点:)
    • @Eliyah 只需替换 1 - 1/2^n 部分的最小值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多