在演讲幻灯片中的一个例子中,大调分析使我感到困惑。
它表明:2n ^ 2 + 4n = O(n ^ 2)和2n ^ 2 + 4n = O(n ^ 4)
有人可以解释同一个等式如何产生不同的结果吗?感谢
答案 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))