如果a> = b,那么O(a + b)= O(a)?

时间:2014-11-27 19:45:52

标签: big-o complexity-theory time-complexity space-complexity

我试图更好地理解O(n)的想法,所以我对此感到好奇:

如果我们知道a> = b所以O(a+b)=O(a)
我知道O(a)+O(a)=O(2a)=O(a),但我想知道它是否真的比它更小,我的意思是 - 如果O(a+b)=O(a)

我认为这是真的,因为a+b=O(2a),但我想知道我是不是错了......

(P.S。如果a和b是常数,那将是真的吗?)

谢谢!

1 个答案:

答案 0 :(得分:5)

根据这种情况,你完全正确地简化了O(a + b)= O(a)。

这是因为

 a>=b (given)
 O(a+b) <= O(a+a) = O(2a) = O(a) // as clearly mentioned by you.

示例: -

我们假设

a = n; b = log(n).

然后,你可以看到

O(a+b) = O(n+log(n)) = O(n) = O(a).