为什么同一个等式给出不同的大O值

时间:2017-10-05 09:20:19

标签: big-o asymptotic-complexity

在演讲幻灯片中的一个例子中,大调分析使我感到困惑。

它表明:2n ^ 2 + 4n = O(n ^ 2)和2n ^ 2 + 4n = O(n ^ 4)

有人可以解释同一个等式如何产生不同的结果吗?感谢

1 个答案:

答案 0 :(得分:1)

首先"="并不意味着它的#34;等于",它意味着"是"在算法分析的意义上。 big-O的目的是满足这个要求:

f(x) O(g(x)) iff 0<=|f(x)|<=c*g(x)其中c为正数。

所以,在你的情况下2n^2 + 4n = O(n^2) AND 2n^2 + 4n = O(n^4)是真的。但是,我们始终使用&#34;最佳功能&#34;这里描述算法,所以我们使用O(n^2)

另一方面,f(x)Ω(h(x)) iff 0<=c*h(x)<=|f(x)|。现在,如果您有h(x)=g(x),则表示f(x)Θ(g(x))