Lecture 2 Pigeonhole Principle
难点在于确定什么是Pigeon,什么是Pigeonhole;
Lecture 3 Permutations and Combinations
应用:
可以解决重复数无限的问题(S={∞·a1,…,∞·ak}的r组合数),若重复数是有限的(S={n1·a1,…,nk·ak}的r组合数需要用容斥原理解决。
以上的x1+x2+…+xk=r的非负整数解的个数求解,xi>=0,xi只有下界没有上界,若是xi既有上界又有下界如下图所示,则需要用容斥原理解决。
Chapter 4 生成排列和组合(Generating Permutatins and Combinations)
Chapter 6 容斥原理及应用(The Inclusion-Exclusion Principle and Applications)
6.2 带重复的组合
Review
应用容斥原理解决重复数有限的多重集组合问题
6.3错位排列(Derangements)
6.4带有禁止位置的排列(Permutations with forbidden positions)
rk指把k个车放在棋盘禁止位置组成的子棋盘的方法数。
可以通过棋盘多项式 求rk ,但并不是特别好用,建议直接手数。
r2的数法,先确定一个格子,然后删除该格子所在行和列,再在剩余的格子中放一个车,即:转化为在剩余的格子中求r1。同理,r3确定一个后,转化为r2.
Chapter 7 递推关系和生成函数(Recurrence Relations and Generating functions)
7.1求解常系数线性齐次地推关系式
特征方程有k个不同的根
h
n
=
c
1
q
1
n
+
c
2
q
2
n
+
⋯
+
c
k
q
k
n
h_{n}=c_{1} q_{1}^{n}+c_{2} q_{2}^{n}+\dots+c_{k} q_{k}^{n}
hn=c1q1n+c2q2n+⋯+ckqkn
有重根
H
n
(
i
)
=
(
c
1
+
c
2
n
+
⋯
+
c
s
i
n
s
i
−
1
)
q
i
n
H_{n}^{(i)}=\left(c_{1}+c_{2} n+\cdots+c_{si} n^{si-1}\right) q_{i}^{n}
Hn(i)=(c1+c2n+⋯+csinsi−1)qin //qi是si重根
h
n
=
H
n
(
1
)
+
H
n
(
2
)
+
⋯
+
H
n
(
t
)
h_{n}=H_{n}^{(1)}+H_{n}^{(2)}+\cdots+H_{n}^{(t)}
hn=Hn(1)+Hn(2)+⋯+Hn(t)
7.2 生成函数
后面常用的一个公式:
(
1
−
x
)
−
k
=
∑
n
=
0
∞
(
n
+
k
−
1
n
)
x
n
(1-x)^{-k}=\sum_{n=0}^{\infty}\left(\begin{array}{c}{n+k-1} \\ {n}\end{array}\right) x^{n}
(1−x)−k=n=0∑∞(n+k−1n)xn
也可以通过生成函数来求解递推关系式 略
书上有例题,略
也就是说求解递推关系式,一种方法是用特征方程和特征值的方法,另一种方法是通过生成函数来求解。
7.3 指数生成函数
多重集的组合数问题求生成函数用7.2中的生成函数,多重集的排列数问题求生成函数用7.3的指数生成函数。
泰勒级数:
注:fni(x)就是根据n1·a1确定的一个关于e^x的函数
Chapter 8 特殊计数序列(Special Counting Sequence)
8.1 Catalan numbers
拟Catalan numbers 略
8.2 差分序列和Stirling数
、
Chapter 9 二部图中的匹配及相异代表系
9.1 二部图中的匹配
什么是二部图
二部图和带禁止位置的棋盘之间的关系
当第xi行和第yj列之间允许放置车时,二部图中xi和yj之间便有连线。
带有禁止位置的棋盘中的非攻击性车放置方式数等于二部图中的匹配数。
Chapter 6 中带有禁止位置的排列也是计算带有禁止位置的棋盘中的非攻击性车放置方式数,但这是数学上的计算方式,采用二部图是用计算机算法的方式来解决问题。
什么是二部图中的匹配
极大匹配(maximal matching)和最大匹配(max-matching)
例子:
M渗透点,M非渗透点;M交错路径,M增广路径
M渗透点(M-saturated Vertices):与匹配M的边相关联的顶点;
M非渗透点(M-unsaturated Vertices):匹配M未渗透的定点;
M交错路径(M-alternating path):一条路径属于匹配M和不属于匹配M的边交替出现;
M增广路径(M-augmenting path):M增广路是指起点和终点都是M非饱和(渗透)的一条M交错路;
定理:M是最大匹配当且仅当不存在M增广路径
Hall’s 定理:
求最大匹配算法
9.2 相异代表系(Systems of distinct representatives)
9.2.1 SDR
9.2.2 SDR的存在性
9.3 稳定婚姻(Stable marriages)
9.3.1 优先排名矩阵
9.3.2 延迟认可算法求完美婚姻
注:这是女士优先(女士总是找到她能够得上的心目中排名靠前的男士)的延迟认可算法,要改为男士优先则只需要将算法中的“女士”和“男士”互换即可。
Chapter 10 组合设计(Combinatorial designs)
10.1 模运算
加法逆元,乘法逆元
通过最大公因数(GCD)算法求乘法逆元
10.2 Fields
**
注:a,b,c,d共k个系数,没有有p中选择,所以共有pk个elements,
Z
p
Z_p
Zp中{0,1,…,p-1}共p个数;
ik中的k是多项式中的最高次数,i是多项式的根;
p是素数,k>=2;
多项式是没有平凡解的多项式;
**
注:i2=-i-1=i+1是因为-1是1的加法逆元,在
Z
p
Z_p
Zp中是等价的
10.3 区组设计(Black designs) //更多是讨论平衡不完全区组设计(BIBD)
BIBD(balanced incomplete block design)
SBIBD(对称非平衡区组设计)
注:不重要,看例子
10.4 Steiner三元系(Steiner triple systems)
区组大小为k=3的平衡区组设计叫做Steiner三元系
**在本节其余部分,我们只考虑指数
λ
\lambda
λ=1的Steiner三元系
v个样品的Steiner和w个样品的Steiner构造vw个样品的Steiner方法//它们的指数 λ 都 等 于 1 \lambda都等于1 λ都等于1
10.5 拉丁方(Latin Squares)
通过 mod n加法构造n阶拉丁方
通过乘法逆元构造 n 阶拉丁方
通过Fileds构造拉丁方 //略
10.6 拉丁矩形(Latin rectangle)
拉丁矩形完备化
通过二部图对拉丁矩形进行完备化
通过二部图对半拉丁方进行完备化
Chapter 14 Polya counting
注:没有学第5章,所以直接把括号打开手算吧。