加法法则
如果集合
A
,
B
A, B
A,B没有重复的元素,那么集合的元素个数满足:
∣
A
∪
B
∣
=
∣
A
∣
+
∣
B
∣
|A \cup B| = |A| + |B|
∣A∪B∣=∣A∣+∣B∣
| |表示对应集合的元素个数
例如:10张红桃牌和3张方块牌的总数
两个事件没有先后顺序或相互之间互不影响且没有重叠,就能使用加法法则。
容斥原理
如果集合
A
,
B
A, B
A,B中存在重复的元素,那么集合的元素个数满足:
∣
A
∪
B
∣
=
∣
A
∣
+
∣
B
∣
−
∣
A
∩
B
∣
|A \cup B| = |A| + |B|-|A \cap B|
∣A∪B∣=∣A∣+∣B∣−∣A∩B∣
例如:20以内的2的倍数和3的倍数
乘法法则
A
,
B
A, B
A,B两个集合中的元素两两组合的组合数为:
∣
A
×
B
∣
=
∣
A
∣
×
∣
B
∣
|A \times B| = |A| \times |B|
∣A×B∣=∣A∣×∣B∣
例如:扑克牌的4种花色和13个等级
两个事件相互影响或有先后次序,就应当使用乘法法则。
置换
将
n
n
n个事物按顺序进行排列就是置换,置换总数为:
n
!
=
n
×
(
n
−
1
)
×
(
n
−
2
)
×
⋯
×
2
×
1
n!=n \times (n-1) \times (n-2) \times \cdots \times 2 \times 1
n!=n×(n−1)×(n−2)×⋯×2×1
例如:将 n n n张牌进行排列
- 排列的第1个位置可以有 n n n种选择;
- 排列的第2个位置只有 n − 1 n-1 n−1种选择;
- 排列的第3个位置只有 n − 2 n-2 n−2种选择;
依此类推:
排列的第 i i i个位置有 n − i + 1 n-i+1 n−i+1种选择
排列的第 n n n个位置有 n − n + 1 = 1 n-n+1=1 n−n+1=1种选择每个位置选择的牌是满足乘法法则的,所以最终的排列的可能的种类就是:
n × ( n − 1 ) × ( n − 2 ) × ( n − 3 ) × ⋯ × 1 = n ! n \times (n-1) \times (n-2) \times (n-3) \times \cdots \times 1 = n! n×(n−1)×(n−2)×(n−3)×⋯×1=n!
阶乘:
0
!
=
1
1
!
=
1
=
1
2
!
=
2
×
1
=
2
3
!
=
3
×
2
×
1
=
6
4
!
=
4
×
3
×
2
×
1
=
24
5
!
=
5
×
4
×
3
×
2
×
1
=
120
0!=1 \\ 1!=1 =1\\ 2!=2 \times 1 = 2 \\ 3!=3 \times 2 \times 1 = 6 \\ 4!= 4 \times 3 \times 2 \times 1=24 \\ 5! = 5 \times 4 \times 3 \times 2 \times 1=120
0!=11!=1=12!=2×1=23!=3×2×1=64!=4×3×2×1=245!=5×4×3×2×1=120
排列
从具有
n
n
n个元素的集合中取出
k
k
k个元素(不重复)进行排列,排列结果为:
A
n
k
=
n
!
(
n
−
k
)
!
A_n^k=\frac{n!}{(n-k)!}
Ank=(n−k)!n!
例如:从 n n n张牌中选出 k k k张牌并进行排列
- 第1个排列位置可以有 n n n种选择;
- 第2个排列位置只有 n − 1 n-1 n−1种选择;
- 第3个排列位置只有 n − 2 n-2 n−2种选择;
依此类推,第k个排列位置有 n − k + 1 n-k+1 n−k+1种选择;因此,所有排列的结果的种类共有:
n × ( n − 1 ) × ( n − 2 ) × ( n − 3 ) × ⋯ × ( n − k + 1 ) = n ! ( n − k ) ! n \times (n-1) \times (n-2) \times (n-3) \times \cdots \times (n-k+1)=\frac{n!}{(n-k)!} n×(n−1)×(n−2)×(n−3)×⋯×(n−k+1)=(n−k)!n!
注意:
A
n
0
=
1
A
n
1
=
5
A
n
n
=
n
!
A_n^0=1 \\ A_n^1=5 \\ A_n^n=n!
An0=1An1=5Ann=n!
组合
从具有
n
n
n个元素的集合中取出
k
k
k个元素(不重复),并且不考虑它们的顺序,组合结果为:
C
n
k
=
A
n
k
A
k
k
=
n
!
(
n
−
k
)
!
k
!
C_n^k=\frac{A_n^k}{A_k^k}=\frac{n!}{(n-k)!k!}
Cnk=AkkAnk=(n−k)!k!n!
例如,从 n n n张牌中选出 k k k张牌。
从正面直接理解的话可能有点难,我们把这个问题变换一下:如果是求从 n n n张牌中选出 k k k张牌并进行排列的可能结果的数量的话,就是上述的排列问题,答案是 A n k A_{n}^{k} Ank。
但其实排列问题就包含了组合问题,因为要从 n n n张牌中选出 k k k张牌进行排列,可以分成两步:
- 从 n n n张牌中选出 k k k张牌;
- 对选出的 k k k张牌进行排列;
第一步就是我们这里要计算的组合问题,所以其实 A n k = C n k × A k k A_{n}^{k}=C_{n}^{k} \times A_k^k Ank=Cnk×Akk;
因此, C n k = A n k A k k = n ! ( n − k ! ) k ! = n ! ( n − k ) ! k ! C_n^k=\frac{A_n^k}{A_k^k}=\frac{\frac{n!}{(n-k!)}}{k!}=\frac{n!}{(n-k)!k!} Cnk=AkkAnk=k!(n−k!)n!=(n−k)!k!n!
注意:
C
n
0
=
1
C
n
1
=
A
n
1
=
n
C
n
n
=
A
n
n
A
n
N
=
1
C_n^0=1 \\ C_n^1=A_n^1=n \\ C_n^n=\frac{A_n^n}{A_n^N}=1
Cn0=1Cn1=An1=nCnn=AnNAnn=1
置换、排列、组合之间的关系
组合不考虑顺序,置换和排列考虑顺序;
置换不考虑选取,组合和排列考虑选取;
置换和组合相结合就是排列
置换是所有元素的排列(不选取)
组合是不考虑顺序的排列
这3中只是基本的排列组合问题,除此之外还可以变换出其他一些具体的问题:
重复组合
从
k
k
k种元素中选出
n
n
n个元素(允许种类相同),重复组合的结果为:
C
n
−
1
k
−
1
C_{n-1}^{k-1}
Cn−1k−1
解决这种问题的思路是把选取元素的问题,转变成选取间隔的问题。具体如下例:
问:从A, B, C这3中药品中,共选取5粒进行调剂;每种至少有1粒;不考虑药品调剂的顺序;同种药品每粒都相同。
解:
- 准备5个盘子来装每1粒药;则5个盘子之间有4个间隔。在这4个间隔中放入2个隔板,并规定第1个隔板左边是A药品,第2个隔板左边是B药品,第2个隔板右边是C药品。这样就保证了每种药品至少有1粒,而且通过变换2个隔板的位置可以改变每种药品的数量。
- 这样,该问题就变成了在4个间隔中选取2个间隔放入隔板,共有几种选法,这是个组合的问题,答案就是 C 4 2 C_4^2 C42
分类讨论
问:有5张扑克牌,其中王牌2张,J, Q, K各1张。将这5张牌排成一排,左端或右端至少有一端是王牌的排法有多少种?(u区分大小王牌)
解:可以分成3种情况讨论:
- 左端是王牌:首先左端的王牌有大小王2种可能,即 C 2 1 C_2^1 C21,其次,剩余的4张牌的需要进行排列,也就是置换;所以这种情况的结果为: 2 × A 4 4 = 2 × 4 ! = 48 2 \times A_4^4 = 2 \times 4! = 48 2×A44=2×4!=48种
- 右端是王牌:和上面的情况一样也有48种
- 两端都是王牌:首先两端的王牌要进行排列,即 A 2 2 A_2^2 A22;其次,剩余的3张牌也要进行排列,即 A 3 3 A_3^3 A33;所以这种情况的结果为: 2 ! × 3 ! = 12 2!\times 3! =12 2!×3!=12
因为第1种情况和第2种情况包含了第3种情况,所以计算“至少有一端是王牌”的排列结果,需要将前2种情况相加,并减去第3种情况,即 48 + 48 − 12 = 84 48 +48- 12 = 84 48+48−12=84
但这还不是最终结果,因为这前面算的都是排列的结果,即区分了大小王,所以最终的结果需要去掉排列的重复度,即2;因此最终结果为: 84 ÷ 2 = 42 84 \div 2=42 84÷2=42
从反面考虑
上面的题目也可以从反面考虑,即“两端都不是王牌”,然后用所有情况减去这个反面,就得到了题目要的结果。
- “两端都不是王牌”:首先从J, Q, K中选2张进行排列,作为两端的排,即
A
3
2
A_3^2
A32;然后剩余的3张牌进行排列,即
A
3
3
A_3^3
A33;最后除以王牌的重复度(不区分大小王),因此结果为:
A 3 2 × A 3 3 2 = 18 \frac{A_3^2 \times A_3^3}{2} = 18 2A32×A33=18 - 总的情况:就是5张牌的排列情况,再除以王牌的重复度(不区分大小王),即 A 5 5 2 = 60 \frac{A_5^5}{2}=60 2A55=60
- 所以最终结果为: 60 − 18 = 42 60-18=42 60−18=42,与上一种解法得出的结果一样。