如果a> = b则O(a + b)= O(a)?

Yoa*_*oar 2 complexity-theory big-o 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),但我想知道我是不是错了......

(如果a和b是常数,PS会是真的吗?)

谢谢!

Am_*_*ful 5

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

这是因为

 a>=b (given)
 O(a+b) <= O(a+a) = O(2a) = O(a) // as clearly mentioned by you.
Run Code Online (Sandbox Code Playgroud)

示例: -

我们假设

a = n; b = log(n).
Run Code Online (Sandbox Code Playgroud)

然后,你可以看到

O(a+b) = O(n+log(n)) = O(n) = O(a).
Run Code Online (Sandbox Code Playgroud)