【问题标题】:What is the Big O, Theta O, Omega O for the following code?以下代码的 Big O、Theta O、Omega O 是什么?
【发布时间】:2014-10-15 09:57:25
【问题描述】:
for(i = 0; i < n; i++)
{
    j+=i;
} 

假设上述代码的大 O 为 O(2n), 上述代码的 Θ(紧界)和 Ω(下界)是什么?

【问题讨论】:

  • 上述代码的大 O 是O(n)。大 O 表示法中的常量没有区别

标签: algorithm big-o asymptotic-complexity


【解决方案1】:

Theta O(紧界)是实际完成的计算量,将是 O(n),而 Omega O(下界)也是 O(n),即所需的最小计算量

【讨论】:

    【解决方案2】:
    1. O(2n) = 2⋅O(n) = O(n)
    2. 您的算法也在 O(n2) 或 O(nn) 或 O(n*log(n)) 等。这是因为 O 是上限。
    3. 它在 Θ(n) 中 - theta (Θ) 准确描述了它的工作原理。
    4. 您的算法以 Ω(n) 为单位,但它也以 Ω(log(n)) 或 Ω(1) 等为单位。这是因为 Omega (Ω) 用于下限。

    【讨论】:

      猜你喜欢
      • 2015-05-03
      • 2019-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      相关资源
      最近更新 更多