【问题标题】:Order of Growth Analysis [duplicate]增长顺序分析 [重复]
【发布时间】:2018-01-28 19:20:08
【问题描述】:

我正在寻求澄清如何确定特定函数的界限。

例如 1:A(n) = log(2^n) + n^(1/3) + 1000 我是否可以正确地说最后两个术语可以“忽略”,因为它们与第一个术语相比微不足道?因此界限是 O(2^n)?

例如 2: B(n) = n + (1/2)*n + (1/3)*n + (1/4)*n + ... + 1 我对此更不确定,但我猜测它会是 O(n)? 1 被忽略(根据例如 1 中 1000 的推理),这就是我确定的。

也在想如果 E.g. 中的分数2被修改,使得分母以不同的模式运行(例如(1/2)*n +(1/4)*n)+(1/8)*n ...),增长的顺序是比 E.g. 快/慢2?

感谢任何可用的指导!谢谢!

【问题讨论】:

  • 对于 B(n) ,取出 n 个共同点,现在剩下 (1+1/2+1/3+...+1/n)。它是Harmonic Series,这个系列到n 的总和是log n。因此总复杂度为O(n log n)
  • log XO(log X) 而不是 O(X)(好吧,至少 O(X) 不会是最严格的界限)。阅读日志规则,log X^Y 可以简化。
  • @Dukeling 在您链接的两个问题中,仅考虑了谐波系列的一部分。这里似乎不是这样。除非最后一个词 1 真的是 (1/n)*n
  • @Nelfeal ???正如 Sanket 指出的那样,B(n) = n*(1+1/2+1/3+...+1/n),最后一部分正是问题计算。 1 = n*(1/n) 表示 n > 0,在数学中。

标签: algorithm


【解决方案1】:
E.g 1: A(n) = log(2^n) + n^(1/3) + 1000

这里 log(2^n) = n 大于 n^(1/3) 所以由阶函数 A(n0 = O(n) 的性质

E.g 2: B(n) = n + (1/2)*n + (1/3)*n + (1/4)*n + ... 1
        = n*(1 + 1/2 + 1/3 + 1/4 ....+ 1/n)

现在 (1 + 1/2 + 1/3 + 1/4 ....) 您可以近似认为它是 dx/x 从 1 到 n 的积分,即 log(n) 得出的结果订单 = O(nlgn)

E.g 2 Modified = n  + (1/2)*n + (1/4)*n + (1/8)*n +.....
           = n( 1+ 1/2 + 1/4 +1/8...) [GP series]
           = n / (1/(1-1/2))
           = 2n

所以变成O(n)

【讨论】:

    【解决方案2】:

    例如 1: A(n) = log(2^n) + n^(1/3) + 1000 我可以正确地说最后两个术语可以“忽略”,因为它们与首先?因此界限是 O(2^n)?

    如果你简化表达式,你会得到A(n) = n*log(2) + n^(1/3) + 1000。最后两个词比第一个词增长慢,n*log(2),就是O(n)。因此A(n)O(n)

    例如 2: B(n) = n + (1/2)*n + (1/3)*n + (1/4)*n + ... + 1 我对这个比较不确定,但我猜测它会是 O(n)? 1 被忽略(根据例如 1 中 1000 的推理),这就是我确定的。

    这个很棘手,因为它涉及一个无限的系列。如果你只有n + (1/2)*n + (1/3)*n + (1/4)*n,那么它将等价于a*n,带有一些小数a,即O(n)。但是,由于表达式是称为harmonic series 的发散无限级数,因此您不能得出B(n)O(n) 的结论。事实上,B(n) 可以简化为S_k(1/i)*n + 1,因为 k 趋于无穷大,S_k(1/i) 是从1k1/ii 之和。因为S_k随着k趋于无穷而发散,B(n)也趋于无穷,假设n>0

    最后,B(n) 没有界限。它没有正确的增长顺序。

    编辑:如果B(n) 不包含无限级数,而是停在(1/n)*n,这是您表达式中的最后一个1,那么答案就不同了。

    The partial sums of the harmonic series have logarithmic growth。这意味着B(n)/n,它恰好是谐波级数的部分和,直到n,是O(log n)。最后,B(n) 就是O(n log n)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多