首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >指数函数和阶乘函数哪个增长更快?

指数函数和阶乘函数哪个增长更快?
EN

Stack Overflow用户
提问于 2012-07-23 14:23:47
回答 4查看 115.5K关注 0票数 83

哪个函数增长更快,指数(如2^n,n^n,e^n等)还是阶乘(n!)?附言:我只是在某处读到了,n!增长速度超过2^n。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-07-23 14:38:21

不!最终比基数固定的指数(2^n和e^n)增长更快,但n^n比n!因为基数随着n的增加而增长。

票数 151
EN

Stack Overflow用户

发布于 2016-03-17 23:16:04

n! = n * (n-1) * (n-2) * ...

n^n = n * n * n * ...

n^n中,第一项之后的每一项都更大,所以n^n增长得更快。

票数 107
EN

Stack Overflow用户

发布于 2019-03-22 22:36:57

n^nn!更大--有关更好的解释,请参阅@AlexQueue的答案。

对于其他情况,请继续阅读:

阶乘函数确实比指数函数渐近增长,但从什么时候开始还不清楚。例如,对于n=5k=10,阶乘5!=120仍然小于10^5=10000。为了找出阶乘函数何时开始变大,我们必须进行一些快速的数学分析。

我们使用Stirling公式和基本的对数运算:

代码语言:javascript
运行
复制
log_k(n!) ~ n*log_k(n) - n*log_k(e)

k^n = n!
log_k(k^n) = log_k(n!)
n*log_k(k) = log_k(n!)
n = log_k(n!)

n ~ n*log_k(n) - n*log_k(e)
1 ~ log_k(n) - log_k(e)
log_k(n) - log_k(e) - 1 ~ 0
log_k(n) - log_k(e) - log_k(k) ~ 0
log_k(n/(e*k)) ~ 0

n/(e*k) ~ 1
n ~ e*k

因此,一旦n的大小几乎达到k的3倍,阶乘函数将开始大于指数函数。对于大多数现实场景,我们将使用较大的n值和较小的k值,因此在实践中,我们可以假设阶乘函数严格大于指数函数。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11607376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档