组合数学_排列与组合

2025-09-01 06:41:23

加法原理

完成一件事情,有N类方式去实现,第一类方式有 a1a_1a1​种,第二类方法有a2a_2a2​种,…,第N类方法有ana_nan​种,则完成这件事情的总方法数为: ∑i=1Nai\sum_{i=1}^N a_ii=1∑N​ai​ 例如:从北京到上海有火车、飞机、轮船 3 种方式,火车、飞机、轮船分别有 a1,a2,a3 个班次,那么从北京到上海有 a1+a2+a3 种方式可以到达。

乘法原理

做一件事,完成它要分成 n 个步骤,第一步有 a1a_1a1​ 种不同的方法,第二步有 a2a_2a2​ 种不同的方法,…,第 n 步有 ana_nan​ 种不同的方法,那么完成这件事共有 a1×a2×a3×…×ana_1 ×a_2×a_3×…×a_na1​×a2​×a3​×…×an​ 种不同的方法

例如:从北京乘坐火车到上海,需要转 3 次车,每次专车分别有 a1,a2,a3 个班次,那么从北京到上海有 a1×a2×a3 种方式可以到达。

排列组合

在排列与组合问题中,经常会出现计数问题,解决计数问题的思路一般有以下三种:

1)只取需要的。将各种符合条件的情形枚举出来,再利用加法原理求和。

2)先取后排。将各步符合条件的排列或组合计算出来,再根据乘法原理求积。

3)先全部取,再减去不要的。利用容斥定理,将各种符合条件的情形枚举出来,再减去不符合条件的。

排列数

从nnn个不同元素中取出m(m<=n)m(m<=n)m(m<=n)个元素的所有排列的个数,叫做从nnn个不同元素中取出mmm个元素的排列数,⽤符号AnmA_n^mAnm​表示 Anm=n!(n−m)!A_n^m=\frac{n!}{(n-m)!}Anm​=(n−m)!n!​

组合数

从nnn个不同元素中取出mmm个元素的所有组合的个数,叫做从nnn个不同元素中取出mmm个元素的组合数。⽤符号CnmC_n^mCnm​或C(n,m)C(n,m)C(n,m)来表示 Cnm=Anmm!=n!m!(n−m)!C_n^m=\frac{A_n^m}{m!}=\frac{n!}{m!(n-m)!}Cnm​=m!Anm​​=m!(n−m)!n!​

组合恒等式

1)Cnm=Cnn−mC_n^m=C_n^{n-m}Cnm​=Cnn−m​

2)Cnm=Cn−1m+Cn−1m−1C_n^m=C_{n-1}^{m}+C_{n-1}^{m-1}Cn