如何解决这些函数中哪个对无穷大有更高的增量?
我想比较两个给定函数的渐近递增,看看它们中哪一个有更高的递增。
给定函数 f(n) = n*ln(n)
和 g(n)= $e^log_2(n)$
,我的解决方案如下图所示:
结果是,n*ln(n)
更快。看图表,我不相信。谁能告诉我怎么解决?
解决方法
您的图表说实话,g(n)
的增长速度比 f(n)
快。原因如下:
关键方程如下
log_a(x) = log_b(x)/log_b(a) (*)
根据定义很容易证明
b^{log_a(x)log_b(a)} = (b^{log_b(a)})^{log_a(x)} ; t^{sr} = (t^s)^r
= a^{log_a(x)} ; b^{log_b(a)}=a
= x.
(证明是完整的,但你可以在两边取log_b
进一步说服自己)
现在我们可以在我们的特殊情况下使用 (*):
log_2(n) = log_e(n)/log_e(2) (**)
并得到
g(n) = e^{log_2(n)} ; def of g(n)
= e^{log_e(n)/log_e(2)} ; (**)
= (e^{log_e(n)})^{1/log_e(2)} ; t^{s/r} = {t^s}^{1/r}
= n^{1/log_e(2)} ; e^{log_e(n)}=n
= n^{log_2(e)} ; (*) for x=b=e,a=2
但由于 e > 2
,我们推导出 log_2(e) > 1
,比如说,log_2(e) = 1 + δ
,与 δ > 0
。于是
g(n) = n*n^δ
我们现在要比较 g(n)
和
f(n) = n*ln(n) ; def of f(n)
这与比较 n^δ
和 ln(n)
相同。为此我们可以计算
lim n^δ/ln(n)
与
相同lim x^δ/ln x ; x → ∞
我们可以在哪里使用 L'Hôpital 规则
lim δx^{δ-1}/x^{-1} = lim δ x = δ lim x = ∞ ; δ > 0.
因此
lim g(n)/f(n) = ∞
和 g(n)
的增长速度比 f(n)
快。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。