比较生长速率:n·lg(n)和0.02·n ^(1.01)。哪一个增长得更快?

时间:2015-08-31 03:27:39

标签: algorithm big-o computer-science

比较n·lg(n)0.02·n^(1.01),哪一个增长得更快?

我可以将n^(1.01)写为n·n^(0.01)

这样做,问题就变成了:如何比较lg(n)n^0.01

但我不知道lg(n)n^0.01中哪一个增长得更快。

我怎么能解决这个问题?

2 个答案:

答案 0 :(得分:1)

对数增长慢于任何正功率。假设lg是十进制对数,0.02 n^(1.01)将在n lg(n)处超过n ~= 4.04192e+433(请参阅Wolphram Alpha查询)。如果这是关于计算复杂性的实际问题,那么对于合理的n值,0.02 n^(1.01)算法可能会比n lg(n)算法更快。

答案 1 :(得分:0)

要查看女巫功能增长更快,您可以计算限额

lim f(n)/g(n)

如果限制为0,则g(n)的增长速度会快于f(n),如果是f(n)的增长速度会快于g(n),如果是其他任何数字,他们都会以同样的方式成长。

计算这样的限制L'Hospital's rule可能会有所帮助。它说

lim f(n)/g(n) = lim f'(n)/g'(n)

其中f'(n)f(n)的区别。

在你的情况下,你必须计算

lim n0.01/ln n = lim (1/n0.99)/(1/n) = lim n/n0.99 = lim n0.01 = ∞

因此n0.01增长速度超过ln n