阶乘到底有多大:不用计算器估出 52! 的位数
来源:eli.thegreenplace.net — eli.thegreenplace.net · 31 分 · by ibobev
📋 概述
作者从「52! 有多大」出发,给出一个可以口算的位数近似:n! 的位数约等于 n·log₁₀(n/e) + 2。以 52! 为例,52 除以 e 约 20,log₁₀(20) 约 1.3,代入得约 69 位,真实答案 68 位,误差只有一位。文章随后补上数学背景:Gamma 函数如何把阶乘插值到正实数,Stirling 近似又是怎么从 Gamma 函数与 Laplace 方法一步步推出来的。
🔑 核心要点
- 位数近似公式是 n·log₁₀(n/e) + 2,52! 估出 69 位、真实 68 位。
- Gamma 函数满足 Γ(n+1) = nΓ(n),是阶乘在正实数上的插值。
- 由 Γ(1)=1 出发归纳可得 Γ(n+1) = n!。
- Stirling 近似 √(2πn)·(n/e)ⁿ 由 Gamma 函数配合 Laplace 方法导出。
- 那个 +2 在 n 小于约 1600 之前都成立。
💡 金句
在这种量级的估算里,差上一两位数字通常不是什么大事。
👍 0
👎 0
← 返回 Hacker News 首页