算法复杂度的相关数学公式

1、 log 2 n ! = Θ ( n log 2 n ) \log_2 n!=\Theta(n\log_2 n)
证明:由Stirling公式, n ! ( n e ) n 2 π n n!\sim (\frac{n}{e})^n\sqrt{2\pi n} 所以 log 2 n ! n ( log 2 n log 2 e ) + 1 2 ( log 2 n + log 2 2 π ) ( 1 2 + n ) log 2 n = Θ ( n log 2 n ) \log_2 n!\sim n(\log_2 n-\log_2 e)+\frac{1}{2}(\log_2 n+\log_2 2\pi)\sim (\frac{1}{2}+n)\log_2 n=\Theta(n\log_2 n) 严格证明也不难。由 \sim 定义, ϵ > 0 \forall \epsilon>0 ,存在 N N 使得 n > N \forall n > N ,有 ( 1 ϵ ) n ! < ( n e ) n 2 π n < ( 1 + ϵ ) n ! (1-\epsilon)n!<(\frac{n}{e})^n\sqrt{2\pi n}<(1+\epsilon)n! 两边取对数后令 ϵ 0 \epsilon\to0 即可。

发布了93 篇原创文章 · 获赞 0 · 访问量 1583

猜你喜欢

转载自blog.csdn.net/qq_46105170/article/details/104067360