组合数学

00:00
14 min Intermediate 2026/6/14

基本计数原理、排列与组合、容斥原理、鸽巢原理、递推关系、生成函数、Catalan数、Stirling数。

1. 基本计数原理

1.1 加法原理

若完成一件事有 类方法,第 类有 种方法,各类方法互不相容,则完成该事共有 种方法。

1.2 乘法原理

若完成一件事需 个步骤,第 步有 种方法,则完成该事共有 种方法。

:从 A 到 B 有3条路,从 B 到 C 有4条路,从 A 经 B 到 C 有 种走法。

2. 排列与组合

2.1 排列

无重复排列:从 个不同元素中取 个排列:

全排列

有重复排列:从 个不同元素中取 个(允许重复)排列:

圆排列 个不同元素的圆排列数:

2.2 组合

无重复组合:从 个不同元素中取 个:

多重组合(可重复组合):从 种元素中取 个(允许重复):

:将10个相同的球放入3个不同的盒子,有多少种方法?

可重复组合:

2.3 组合恒等式

Pascal 恒等式

二项式定理

特殊值

  • (Vandermonde 恒等式的特例)

Vandermonde 恒等式

2.4 多重集的排列

设多重集 ,则全排列数为:

:MISSISSIPPI 的字母排列数。

, , , ,共11个字母。

3. 容斥原理

3.1 两集合

3.2 三集合

3.3 一般形式

3.4 错排问题

个元素的错排(derangement)数:

:4个人的帽子全戴错的方案数。

3.5 Euler 函数

不超过 且与 互素的正整数个数:

其中 取遍 的所有不同素因子。

4. 鸽巢原理

4.1 基本形式

个物品放入 个盒子,至少有一个盒子包含至少2个物品。

4.2 加强形式

个物品放入 个盒子,则至少有一个盒子包含至少 个物品。

4.3 应用

:在任意 个正整数中,必有两个数之差是 的倍数。

考虑这 个数除以 的余数,余数只有 种,由鸽巢原理,必有两个数余数相同,其差是 的倍数。

:在边长为1的正三角形中任取5个点,必有两点距离不超过

将正三角形分为4个边长为 的小正三角形,5个点放入4个区域,必有2个在同一区域,距离不超过

5. 递推关系

5.1 常系数线性齐次递推

特征方程

求解

  • 贡献
  • 贡献

:Fibonacci 数列

特征方程:

5.2 常系数线性非齐次递推

通解 = 齐次通解 + 非齐次特解

特解形式取决于

特解形式
(常数)
不是特征根)
特征

6. 生成函数

6.1 定义

序列 普通生成函数

6.2 常用生成函数

序列生成函数

6.3 应用

:用1元、2元、5元硬币凑出 方案数。

生成函数 展开式中 的系数。

6.4 指数生成函数

适用于排列计数问题

序列指数生成函数

7. Catalan 数

7.1 定义

前几项:

7.2 递推关系

7.3 组合意义

计数的问题

  1. 括号的合法匹配
  2. 个矩阵连乘的加括号方式数
  3. 不越过对角线路径
  4. 节点的不同二叉搜索树个数
  5. 形的三角剖分数
  6. 的合法出序列数

:3对括号的合法匹配 种。

((())), (()()), (())(), ()(()), ()()()

7.4 生成函数

8. Stirling 数

8.1 第一类 Stirling 数

:将 个不同元素排成 个非空换的方案数。

递推

边界),

与阶乘的关系

8.2 第二类 Stirling 数

:将 个不同元素分成 个非空子集方案数。

递推

边界),

与幂的关系

显式公式

4个元素分成2个非空子集, , , , , ,

8.3 Bell 数

元素的划分总数。

前几项:

递推

指数生成函数

知识检测

学习进度

-- 已学文档
--% 知识覆盖率

学习推荐

专注模式