组合数的计算公式
组合数是指从 n nn 个不同元素中取出 m mm(m ≤ n m\leq nm≤n)个元素的所有组合的个数,用符号 C n m C_{n}^mCnm 表示,其计算公式如下: 阶乘形式 C n m = n ! m ! ( n − m ) ! C_{n}^m = \frac{n!}{m!(n - m)!}Cnm=m!(n−m)!n! 其中 n ! n!n! 表示 n nn 的阶乘,即 n ! = n × ( n − 1 ) × ( n − 2 ) × ⋯ × 2 × 1 n!=n\times(n - 1)\times(n - 2)\times\cdots\times2\times1n!=n×(n−1)×(n−2)×⋯×2×1 ,规定 0 ! = 1 0!=10!=1 。
例如计算 C 5 2 C_{5}^2C52 : C 5 2 = 5 ! 2 ! ( 5 − 2 ) ! = 5 ! 2 ! × 3 ! = 5 × 4 × 3 ! 2 × 1 × 3 ! = 5 × 4 2 × 1 = 10 \begin{align*} C_{5}^2&=\frac{5!}{2!(5 - 2)!}\\ &=\frac{5!}{2!×3!}\\ &=\frac{5\times4\times3!}{2\times1\times3!}\\ &=\frac{5\times4}{2\times1}\\ & = 10 \end{align*} C52=2!(5−2)!5!=2!×3!5!=2×1×3!5×4×3!=2×15×4=10 递推形式 组合数还有递推性质,即 C n m = C n − 1 m + C n − 1 m − 1 C_{n}^m = C_{n - 1}^m + C_{n - 1}^{m - 1}Cnm=Cn−1m+Cn−1m−1 这个递推公式在计算组合数时非常有用,特别是当 n nn 和 m mm 较大时,可以通过较小的组合数逐步计算出较大的组合数,减少计算量。
例如已知 C 4 1 = 4 C_{4}^1 = 4C41=4,C 4 2 = 6 C_{4}^2 = 6C42=6,那么计算 C 5 2 C_{5}^2C52 时,根据递推公式可得 C 5 2 = C 4 2 + C 4 1 = 6 + 4 = 10 C_{5}^2 = C_{4}^2 + C_{4}^1 = 6 + 4 = 10C52=C42+C41=6+4=10 ,结果与直接用阶乘公式计算一致。