【问题标题】:Prove f(n) + g(n) is O(max(f(n),g(n)))证明 f(n) + g(n) 是 O(max(f(n),g(n)))
【发布时间】:2012-09-29 06:27:48
【问题描述】:

您好,我在证明以下内容时遇到了一些困难。

f(n) + g(n) is O(max(f(n),g(n)))

这在逻辑上是有道理的,通过查看这个我可以告诉你它是正确的,但我无法提出一个证明。

这是我目前所拥有的:

c * (max(f(n),g(n))) > f(n) + g(n) for n > N

但我不确定如何选择 c 和 N 来符合定义,因为我不知道 f(n) 和 g(n) 是什么。

感谢任何帮助。

【问题讨论】:

    标签: algorithm big-o analysis notation


    【解决方案1】:
    f(n) + g(n) <= 2* max{f(n),g(n)} 
    (for each n>0, assume f(n),g(n) are none-negative functions)
    

    因此,对于N=1,对于所有n&gt;Nf(n) + g(n) &lt;= 2*max{f(n),g(n)},我们可以根据大O的定义说f(n) + g(n)O(max{f(n),g(n)})

    所以基本上,我们使用N=1, c=2 作为定义上的正式证明。

    【讨论】:

    • 上述等式中的 c=2 怎么算?
    猜你喜欢
    • 1970-01-01
    • 2011-05-13
    • 2022-01-20
    • 1970-01-01
    • 2020-08-05
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多