使用限制来证明渐近界

时间:2014-10-29 22:23:32

标签: big-o complexity-theory

我希望这是提出这个问题的正确位置。

我正在阅读Cormen课程的算法简介,有时公式有点压倒性。

例如:

enter image description here

这与限制有什么关系?他提到了关于小o的限制,但不是ΘΩ

如何证明函数在另一个函数的Omega或Theta中使用限制?

F(n) = 5n² + 3中的G(n) = 35n + 7F Ω(G)Θ(F)中的{{1}}还是{{1}}中的G?

1 个答案:

答案 0 :(得分:1)

定义说,f位于Θ(g),如果您可以找到两个常量c₁c₂以及输入大小n₀,那么c₁⋅g(n) ≤ f(n) ≤ c₂⋅g(n) {1}}适用于所有n ≥ n₀

您可以使用限制来显示存在此类常量,这就是您可以定义oOΘΩω的原因。限制,而不是上面的定义。

在你的例子中:

limn → ∞ | F(n) / G(n) | = limn → ∞ | (5n² + 3) / (35n + 7) | = ∞

这表明F的增长速度比G快,而且找不到常量c和固定的n₀F(n) ≤ c⋅ G(n)对所有n > n₀都有效F 1}}。因此O(G)不在Θ(G)中,因此也不在F中。事实上,这表明ω(G)位于Ω(G)中,因此它也位于G中,或者(如果您喜欢它的方式更好)o(F)位于n₀ }}

通过将带有常数的条件应用到限制中,可以看到这一点。

注意:有很多种方法可以选择常量和SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); 。限制不会得到这个常数,但只显示它们是否存在。