上界不必要地相交
upper-bound intersecting unnecessarily
我正在学习 Big-O 符号的基础知识。
f(n) = Ω(g(n)) means c.g(n) is a lower bound on f(n) such that f(n) is always ≥ c.g(n)
f(n) = O(g(n)) means c.g(n) is an upper bound on f(n) such that f(n) is always
≤ c.g(n)
for all n ≥ n0
上图上界和下界很清楚,但是为什么f(n)和上界相交?当它从上面的定义中明确时?这有意义吗?还是我只是不必要地指出?
来源:Skiena 的算法设计手册
根据前两个定义,应该没有交集,因为 always
f(n) = Ω(g(n)) means c.g(n) is a lower bound on f(n) such that f(n) is
always ≥ c.g(n)
f(n) = O(g(n)) means c.g(n) is an upper bound on f(n) such that f(n)
is always ≤ c.g(n)
这些定义并不完全正确。因为大 O 表示法的想法是在 n
非常大时检查操作数。用外行的话来说,这意味着您只有在您认为足够大的某个数字之后才开始检查复杂性。这在你的照片上有概述:
Upper and lower bounds valid for n > n0 ...
这就是为什么图片上有一条垂直线 n0。所以你不关心这一行之前的任何东西,因为你只考虑n0之后的数字足够大。
为了使这些定义完全正确,只需在它们的末尾添加 for n > n0。
这个定义简直不准确。 Big-O 符号是关于渐近增长的。因此,它的属性被考虑用于 "large enough N",这意味着它可能不适用于小的 N。
在图表中,一个"large enough N"被标记为N0,之后保持限制属性。
除了其他答案已经说了,定义中的不等式也不正确,应该反过来:
f(n) = Ω(g(n)) means c.g(n) is a lower bound on f(n) such that f(n) is always ≥ c.g(n)
f(n) = O(g(n)) means c.g(n) is an upper bound on f(n) such that f(n) is always ≤ c.g(n)
我正在学习 Big-O 符号的基础知识。
f(n) = Ω(g(n)) means c.g(n) is a lower bound on f(n) such that f(n) is always ≥ c.g(n)
f(n) = O(g(n)) means c.g(n) is an upper bound on f(n) such that f(n) is always ≤ c.g(n) for all n ≥ n0
上图上界和下界很清楚,但是为什么f(n)和上界相交?当它从上面的定义中明确时?这有意义吗?还是我只是不必要地指出?
来源:Skiena 的算法设计手册
根据前两个定义,应该没有交集,因为 always
f(n) = Ω(g(n)) means c.g(n) is a lower bound on f(n) such that f(n) is always ≥ c.g(n)
f(n) = O(g(n)) means c.g(n) is an upper bound on f(n) such that f(n) is always ≤ c.g(n)
这些定义并不完全正确。因为大 O 表示法的想法是在 n
非常大时检查操作数。用外行的话来说,这意味着您只有在您认为足够大的某个数字之后才开始检查复杂性。这在你的照片上有概述:
Upper and lower bounds valid for n > n0 ...
这就是为什么图片上有一条垂直线 n0。所以你不关心这一行之前的任何东西,因为你只考虑n0之后的数字足够大。
为了使这些定义完全正确,只需在它们的末尾添加 for n > n0。
这个定义简直不准确。 Big-O 符号是关于渐近增长的。因此,它的属性被考虑用于 "large enough N",这意味着它可能不适用于小的 N。
在图表中,一个"large enough N"被标记为N0,之后保持限制属性。
除了其他答案已经说了,定义中的不等式也不正确,应该反过来:
f(n) = Ω(g(n)) means c.g(n) is a lower bound on f(n) such that f(n) is always ≥ c.g(n)
f(n) = O(g(n)) means c.g(n) is an upper bound on f(n) such that f(n) is always ≤ c.g(n)