Wallis公式&Stirling公式&Gamma函数 |
您所在的位置:网站首页 › 斯特林公式是什么 › Wallis公式&Stirling公式&Gamma函数 |
Wallis公式
(!!是双阶乘,不超过这个整数且具有相同奇偶的正整数相乘,比如5!!=1×3×5, 6!!=2×4×6) 利用Wallis公式推导Stirling公式斯特林公式是一条用来取n阶乘近似值的数学公式。一般来说,当n很大的时候,n阶乘的计算量十分大,所以斯特灵公式十分好用。从图中可以看出,即使在n很小的时候,斯特灵公式的取值已经十分准确。 斯特林公式如下 接下来利用Wallis公式来推导斯特林公式 借助函数 f(x) = ln x 的图像面积,通常有三种求法,分别是积分法,内接梯形分割法,外切梯形分割法。实际上最准确的是第一种,后面两种都有一定的误差 如果要计算n的阶乘后得到的数字为几位数,则我们可以知道其位数等于lg n! + 1 则: ln(n!) = ln 1 + ln 2 + … + ln n. 但是当n很大的时候,我们可以通过斯特林公式进行优化:(即Stirling公式) (e = 2.718) 斯特林公式可以用来估算某数的大小,结合lg可以估算某数的位数,或者可以估算某数的阶乘是另一个数的倍数。 再来证明log(n!) 与 nlog n是等价无穷大(n -> ∞): 题目地址http://acm.hdu.edu.cn/showproblem.php?pid=1018 题目描述 思路当n很小时,直接取 lg n! 利用Stirling公式计算n!结果的位数时,则是两边取对数 故n!的位数为: 代码 语言支持:C++C++ Code: #include #include #include using namespace std; const double pi = acos(-1.0), e = exp(1.0); int main(){ int n, T; scanf("%d", &T); while (T--){ scanf("%d", &n); double temp = 0; if (n |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |