【发布时间】:2016-02-07 20:46:14
【问题描述】:
我了解函数边界的一般概念;例如,如果我们说一个函数
ƒ1(n) ∈ Ω(n^2)
那么我们知道ƒ1(n)是下界n^2约束内的一个元素,意思是ƒ1(n) 可以是任何增长较慢或等于 n^2 的函数。
现在,当我们谈论关于 ƒ1(n) 边界的其他函数时,我开始感到困惑。例如,假设我们有一个声明如下:
如果
ƒ1(n) ∈ Ω(n^2)
和
ƒ2(n) ∈ Θ(n)
那么
ƒ2(n) ∈ O(ƒ1(n))
我很难判断它是真是假。我有两种相互矛盾的方法:
- true - 由于 ƒ2 在 n 下是紧密绑定的,所以它可以被认为是 约束内的一个元素>O(ƒ1(n)),因为 ƒ2 的增长速度并不比 ƒ1 慢。
- false - 由于 ƒ1 的下界为 n^2,因此函数 ƒ2 紧束缚在 n 下,不能被认为是 ƒ1 上限的元素,因为我们知道 ƒ1 不会有上限bound 的增长速度比 n^2 慢。
我想到的这两种方法对我来说似乎都有效;当我们试图确定另一个函数是否是其上限的元素时,我想我是否关心 ƒ1 的下限。
任何有关澄清这一点的帮助将不胜感激。
【问题讨论】:
-
我认为这个问题应该在cs.stackexchange.com提出
-
@rolve 我在这里和 cs exchange 上看到过算法问题,所以我不确定在哪里发布 - 有没有办法将这个问题移到那里,或者我应该关闭 / 在 cs exchange 上重新发布?
-
当我投票结束该问题时,它建议我将此问题迁移到的位置,但 CS 不在列表中。所以也许你必须重新发布,但我不完全确定。
-
@rolve 好的,我想我会把它留在这里一段时间,看看其他人的想法(我是否应该将它移到 cs 交换或这里是否可以等)