找到这个函数的增长顺序的正确方法是什么?

时间:2009-09-13 08:00:10

标签: big-o

2 ^ n + 6n ^ 2 + 3n

我想这只是O(2 ^ n),使用最高阶项,但是要证明这一点的正式方法是什么?

2 个答案:

答案 0 :(得分:4)

您可以使用无穷远处的限制来证明2^n + n^2 + n = O(2^n)。具体来说,如果f(n)是有限的,则O(g(n))lim (n->inf.) f(n)/g(n)

lim (n->inf.) ((2^n + n^2 + n) / 2^n)

由于您有inf / inf,indeterminate form,您可以使用L'Hopital's rule并区分分子和分母,直到您得到可以使用的内容:

lim (n->inf.) ((ln(2)*2^n + 2n + 1) / (ln(2)*2^n))
lim (n->inf.) ((ln(2)*ln(2)*2^n + 2) / (ln(2)*ln(2)*2^n))
lim (n->inf.) ((ln(2)*ln(2)*ln(2)*2^n) / (ln(2)*ln(2)*ln(2)*2^n))

限制为1,因此2^n + n^2 + n确实是O(2^n)

答案 1 :(得分:3)