【问题标题】:Showing f(n) = O(f(n) + g(n))?显示 f(n) = O(f(n) + g(n))?
【发布时间】:2013-09-18 19:24:02
【问题描述】:

我想知道以下 Big-O 比较的证明是什么:

f(n) 是 O(f(n) + g(n)))

我知道我们可以使用:

f(n) ≤ 常数 * (f(n) + g(n))

但我不知道如何跟进。

我们用 big-Ω 代替 big-O 的情况如何?

【问题讨论】:

    标签: algorithm math proof big-o


    【解决方案1】:

    如果你知道函数 g(n) 是非负的,那么请注意

    f(n) ≤ f(n) + g(n) = 1 · (f(n) + g(n))

    鉴于此,您能否使用大 O 表示法的正式定义来证明 f(n) = O(f(n) + g(n))?

    如果 g(n) 不一定非负,那么这个结果不一定是真的。例如,取 f(n) = n 和 g(n) = -n。那么 f(n) + g(n) = 0,那么 f(n) = O(0) 是不成立的。

    至于Ω的情况,你确定这个结果一定是真的吗?作为提示,尝试选择 f(n) = n 和 g(n) = 2n。 f(n) 真的是 Ω(f(n) + g(n)) 吗?

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 2022-01-20
      • 2012-09-29
      • 2020-08-05
      • 2021-04-24
      • 1970-01-01
      • 2012-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多