大O符号的加法和乘法

时间:2015-04-05 18:18:52

标签: algorithm

让f和g成为两个函数。它们用于其他功能,它增加了两个功能的输出,在另一种情况下乘以两个功能的输出。即 如果f = O(n)且g = 0(n ^ 3),则f + g =α。 f * g怎么样?

1 个答案:

答案 0 :(得分:0)

O(n)通过采用最大的订单项而忽略其他订单项来工作。所以在你的例子中:

f = O(n)

g = O(n 3

假设*+属于O(n)自己...

f + g = O f + O + + O g = O(n)+ O(n)+ O (n 3 )= O(n 3 + 2n)= O(n 3

请注意,在最后一步中,您只需忽略除最高阶项之外的所有项,并删除任何倍数。对于*,结果是相同的。

另一个例子:

f + f = O f + O + + O f = O(n)+ O(n)+ O (n)= O(3n)= O(n)

请记住,运营商也有一个“成本”,这已经与其他业务相加。

Big O表示法总是添加,但请务必考虑元素数量是否发生变化。 (例如,如果你做了一个增加元素数量的操作,那么n的未来实例就会增加。如果你做矩阵乘法之类的事情,这很重要。)