为什么只对Big Oh进行最高次多项式运算呢?

时间:2019-01-18 15:37:50

标签: java algorithm

为什么我们只对Big Oh符号采用最高阶的多项式。我知道我们可以删除这些常量,因为它们对于'n'的极高值无关紧要。

但是,假设算法要花费(nlogn + n)时间,那么为什么在这种情况下我们忽略'n'。然后大哦变成O(nlogn)。
Big Oh必须是算法花费的时间上限。因此,即使对于非常高的n值,它也不应该是(nlogn + n)吗?

2 个答案:

答案 0 :(得分:8)

因为-E是渐进比较,它回答了函数如何比较大O的问题。一旦n足够大,则多项式的较低阶数对于函数行为就变得无关紧要。

答案 1 :(得分:3)

一种查看方式是:“ nlog(n)+ n”小于“ 2nlog(n)”。现在,您可以放下2。