Appearance
离散数学II
图
图的概述
图
图的分类:
mermaid
graph LR
图-->有向图
图-->无向图
无向图-->简单图
无向图-->多重图
无向图-->伪图无向图, Undirected Graph
| 类型 | 环 | 多重边 |
|---|---|---|
| 简单图(Simple graph) | 无 | 无 |
| 多重图(Multigraph) | 无 | 有 |
| 伪图(Pseudograph) | 有 | 有 |
| 分别为: 简单图 多重图 伪图 | ||
![]() |
有向图, Directed Graph
有向图根据是否有多重边也可以分为 简单有向图(simple directed graph) 和 有向多重图(dir.Multigraph)。
图的术语, Graph Terminology
| 汉语 | 英语 | 定义 | 备注 |
|---|---|---|---|
| 顶点 | Vertex | 图中的基本单位,用来表示点或节点。 | 通常用字母(如u, v, w)表示。 |
| 边 | Edge | 图中的基本单位,用来连接两个顶点。 | 可以是无向边或有向边。 |
| 邻接的/相邻的 | adjacent/neighbor | 若 {u, v} 是无向图 G 的边,则两个顶点 u 和 v 在 G 中称为邻接(或相邻)。 | 对有向图,同样可以定义邻接关系。 |
| 关联 | incident | 边 e 关联顶点 u 和 v,也可以说边 e 连接 u 和 v。 | e = {u, v} 或 (u, v)。 |
| 端点 | endpoint | 顶点 u 和 v 称为边 {u, v} 的端点。 | 边的起点和终点。 |
| 顶点 v 的邻居 | The neighborhood of v | v 的所有邻居,用 | 邻居是与顶点 v 直接相连的顶点。 |
| 顶点的度 | degree of a vertex | 在无向图里,顶点的度是与该顶点关联的边的数目。特殊情形是,顶点上的环为顶点的度做出双倍贡献。 | 与顶点相关联的边的数目,记作 |
| 入度、出度 | in-degree, out-degree | 入度 | 适用于有向图。 |
| 基本无向图 | underlying undirected graph | 忽略边的方向后得到的无向图称为基本无向图。 | 可以从有向图转换而来。 |
关于度
对于度为0的顶点,我们称它为孤立的(Isolated);度为1的顶点称为悬挂的(pendant)。
使用
握手定理:

即使出现多重边和环仍成立
只需要证明每条边都为顶点的度之和贡献为2.
根据握手定理,可以证明:无向图有偶数个度为奇数的顶点。

对于有向图,由于入度和出度的区别,有这个性质

环对度的影响
顶点上的环为顶点的度做出双倍贡献 即同时拥有 1出度 ,1入度
特殊的简单图
| 图 | 记号 | 性质 | 英语 |
|---|---|---|---|
| 完全图 | 每对不同顶点之间都恰有一条边的简单图 | Complete Graph | |
| 圈图 | 由 | Circles | |
| 轮图 | 给 | Wheels | |
| 用顶点表示 | n-Cube | ||
| 正则图 | 如果一个简单图的每个顶点都有相同的度,那么这个图就称为正则图。 | regular graph |
完全图: 
圈图 
轮图 

正则图
二分图,Bipartite Graph
若把简单图
二分图的判定(涂色):
一个简单图是二分图,当且仅当能够对图中的每个顶点赋予两种不同的颜色,并使得没有两个相邻的顶点被赋予相同的颜色。
简单二分图概念速记
不能连接同一集合内的顶点
简单二分图 
完全二分图:顶点集分成分别含有
完全二分图概念速记
每个顶点必须连接到另一集合的所有顶点
完全二分图 
二部划分可以被应用到匹配(matching)问题上。简单图
霍尔婚姻定理:提供了一组存在完全匹配的充分必要条件:

匹配
A matching
- 最大匹配(Maximum Matching):A maximum matching (最大匹配) is a matching with the largest number of edges.
- 完全匹配(Complete Matching):A complete matching (完全匹配) from
to , if every vertex in is the endpoint of an edge in the matching, or equivalently, if .
完全匹配的充要条件(霍尔婚姻定理,P555):

新图的产生
概括
子图(subgraph):点集和边集是原图子集的图。特别的,还有真子图(proper subgraph)
生成子图(spanning subgraph):顶点与原图完全相同,边集是原图子集的子图。
导出子图(subgraph induced by a subset):分为点导出子图和边导出子图
设
,以 为顶点集,以端点均在 中的 中的边的全体为边集 ,构成的子图,称为由 导出的 的子图(点导出子图),记为 。设 ,以 为边集,以 中边的端点全体为顶点集构成的子图,称为由 导出的 的子图(边导出子图),记为 。
并图(The Union of graph
补图(Complementary graph
通过操作边和顶点:
从图中删除或增加边

边的收缩(Edge contraction)

从图中删除顶点

图的表示和同构, Graph Isomorphism
图的表示
图的表示有几种常用的方法:
- 邻接表,Adjacency list
- 邻接矩阵,Adjacency matrice:一种类型是基于顶点的邻接关系;另一种类型是基于顶点与边的关联关系。

[!notice] 无向图的邻接矩阵总是对称的(包括伪图和多重图) 图的邻接矩阵依赖于所选择的顶点的顺序 对无向图来说,邻接矩阵每一行各个位置上数字之和代表与顶点
关联的边数, 等于顶点 的度减去在顶点 上的环数(本质上是去重);对于有向图而言,邻接矩阵每一行各个位置上数字之和代表该顶点的出度,每一列代表该顶点的入度。
- 关联矩阵,Incidence matrice
[!info ] 在无向图中的关联矩阵中,每列中有两个
的表明这条边与这两个顶点相连接,每列有一个 的表明存在环
对于无向图来讲,邻接矩阵上每一行各个位置上数字的和表示与该顶点关联的边数,也就是他的度减去环的数量(去掉重复的贡献);对于有向图来讲,每行的和表示该顶点的出度,每列的和表示入度。
图的同构

[!info ] 省流 当两个简单图同构时,两个图的顶点之间具有保持邻接关系的一一对应。
在两个带
重要的不变量包括:
- 相同的顶点数
- 相同的边数
- 相同的顶点度
- 相同的二分能力
- 当且仅当都是完成图
- 当且仅当都是轮图
- 连通分支的数目及大小
- 当且仅当都具有相同长度的简单回路
NOTE
图同构算法己知的最好的判定两个图是否同构的算法具有指数的最坏情形时间复杂度 (对图的顶点数来说)。不过,解决这个问题的线性平均情形时间复杂度的算法已经找到,而且有希望,即使仍有怀疑,找到判定两个图是否同构的多项式最坏情形时间复杂度的算法。
连通性问题, Connectivity
术语区分(此处术语可能并不通用,括号是另一套术语):
| 汉 | 英 | 定义 | 备注 |
|---|---|---|---|
| 通路(路径) | path(walk) | 图 | 点和边交替出现 |
| 迹 | trail | 若一条通路中的边不重复,则称该通路为迹。 | 边唯一 |
| 回路(闭合路径) | circuit(closed walk) | 如果 | 也叫闭迹,通路起点和终点相同且长度不为0 |
| 路线/简单通路 | trail | 若通路或回路不重复地包含相同的边,则称为简单通路或简单回路 | 也可以称为“迹”,是特殊的通路 |
| 端点 | 通路的起点和终点称为端点。起点为 | 端点是路径中第一个和最后一个顶点 | |
| 内点 | 通路中除了端点外的顶点称为内点,即 | 路径的中间顶点 | |
| 路长 | 通路所包含边的数量称为通路的长度,即通路的边数 k | - | |
| 路径的逆转 | 记 W 是一条从 | 逆转后的路径依然是原路径的有效表示 | |
| 节 | 通路 W 的部分相连项构成的子序列也必构成一条路径,这条路径称为 W 的节 | 通路的连续子序列 | |
| 新的路径 | W 可以与另一条路径 W′ 衔接在一起便得一条新路径,记为 WW′ | 新路径必须符合顶点和边的连接规则 | |
| 圈 | Circle | 设 | 当 k 为偶数时称为偶圈;k 为奇数时称为奇圈 |

名词重整
- 通路(path):==顶点==和==边==交替
- 回路(circuit):==起点==和==终点==相同
- 简单通路/迹(trail):==边==不重复
- 初级通路/路:==点==不重复
圈的性质定理:
- 若图
中每个顶点度数至少为2,则 中必含有圈。 
距离:设
TIP
当
在连通无向图的每一对不同顶点之间都存在简单通路。
分割与点、边连通度
- 割点(cut vertices):如果删除一个顶点和它所关联的边,就产生比原图更多的连通分支的子图时,这样的顶点称为割点(cut vertices)或关节点。从连通图里删除割点,就产生不连通的子图。
- 割边或桥(cut edge or bridge):如果删除一条边,就产生比原图更多的连通分支的子图时,这样的边称为割边或桥(cut edge or bridge)。
没有割点的图(例如完全图),被称为不可分割图(nonseparable graph)
设
一个图的点割集中最小的顶点数,称为点连通度(vertex connectivity),记为
,满足 。K(G)是使G变成不连通的图或只含有一个顶点的图,所需删除的最小的顶点数。当 ,则称图G是k连通的(k-connected)。 对于不连通图和
, ;对于含割点的连通图或 , 。 设
是图G的边集 的子集,如果 是不连通的,则称 是边割集(edge cut)。一个图的边割集中最小的边数,称为边连通度(edge connectivity),记为 . 对于不连通图和
, ;对于含割点的连通图或 , 。
我们可以主观的看到,点、边连通度越大整体的连通性越强。
点连通度和边连通度的不等式):

1. 割点 (Cut Vertex)
定义:在一个连通图中,删除某个顶点及其相连的边,导致图的连通分支数增加(即图变得不连通)时,这个顶点被称为割点(cut vertex)或关节点。
性质:如果从一个连通图中删除一个割点,它会使图变得不连通或至少有更多的连通分支。
例子:在一个树结构中,任何一个非叶子节点都是割点。
2. 割边或桥 (Cut Edge or Bridge)
定义:如果删除图中的一条边,导致图的连通分支数增加(即图变得不连通),则称这条边为割边(cut edge)或桥(bridge)。
性质:如果一条边被删除后图的连通性变差,说明这条边是图的关键连通桥梁。
例子:在树中,每一条边都是割边。
3. 不可分割图 (Nonseparable Graph)
定义:如果一个图中没有任何割点,即删除任何一个顶点或边都不会使图变得不连通,那么这个图被称为不可分割图(nonseparable graph)。
例子:完全图是不可分割的,因为删除任何顶点或边都不会使其变得不连通。
4. 点割集 (Vertex Cut)
定义:设
是图 G 的顶点集 V 的子集。如果从图中删除 中的所有顶点后,图变得不连通(即 '不连通),那么 就是图 G 的点割集(vertex cut)或分割集(separating set)。 性质:点割集代表了图中最少的顶点集合,删除这些顶点后图会失去连通性。
例子:在一个链式结构中,任何一个中间节点都是点割集。
5. 点连通度 (Vertex Connectivity)
定义:图 G 的点连通度
是最小的顶点数,使得删除这些顶点后,图变得不连通或只剩下一个顶点。点连通度的值满足 (其中 nnn 是顶点的数量)。 性质:点连通度越大,说明图的连通性越强,删除顶点越不容易使图不连通。
例子:
- 对于一个不连通图或 K1K_1K1(单个顶点的图),点连通度 K(G)=0K(G) = 0K(G)=0。
- 对于包含割点的连通图或 K2K_2K2(两个顶点的完全图),点连通度 K(G)=1K(G) = 1K(G)=1。
k连通图:如果 K(G)≥kK(G) \geq kK(G)≥k,则称图 GGG 是k连通(k-connected)。
6. 边割集 (Edge Cut)
定义:设
是图 G 的边集 E 的子集。如果从图中删除 中的所有边后,图变得不连通(即 不连通),那么 就是图 G 的边割集(edge cut)。 性质:边割集代表了图中最少的边集合,删除这些边后图会失去连通性。
例子:在树结构中,每一条边都是边割集。
7. 边连通度 (Edge Connectivity)
定义:图 G的边连通度
是使得图变得不连通的最少边数。边连通度的值也满足 性质:边连通度越大,说明图中有更多的边,删除这些边才会使图不连通,连通性较强。
例子:
- 对于不连通图或 K1K_1K1(单个顶点的图),边连通度 λ(G)=0\lambda(G) = 0λ(G)=0。
- 对于含割点的连通图或 K2K_2K2(两个顶点的完全图),边连通度 λ(G)=1\lambda(G) = 1λ(G)=1。
8. 点连通度和边连通度的不等式
- 不等式:对于一个图 G,通常有以下不等式:
这意味着图的边连通度总是小于或等于图的点连通度,因为删除边会影响图的连通性,而删除顶点的影响通常更大。
- 图示:你提到的图示表示点连通度和边连通度的关系,在图中可以看到边连通度总是小于等于点连通度。
连通性
- 图 (Graph): 一个图由顶点集合和连接顶点的边集合组成。
- 子图 (Subgraph): 是原图的一部分,由原图的部分顶点和部分边组成。
- 无向图 (Undirected Graph): 边没有方向,边连接的两个顶点是对称的。
- 联通 (Connected): 一个图是联通的,如果从任意一个顶点出发,都能到达其他顶点。
- 联通图 (Connected Graph): 是一个无向图,其中任意两个顶点之间都有路径连接。
- 联通分量 (Connected Components): 是无向图中最大联通子图。
- 有向图 (Directed Graph): 边有方向,从一个顶点指向另一个顶点。
- 强联通 (Strongly Connected): 一个有向图是强联通的,如果从任意顶点出发,都能通过有向路径回到该顶点。
- 强联通图 (Strongly Connected Graph): 是一个有向图,其中任意两个顶点之间都存在双向的有向路径。
- 强联通分量 (Strongly Connected Components): 有向图中的强联通子图,其中任意两个顶点都有路径相连。
连通性
任意两个点之间都有通路
基本定理:在连通无向图的每一对不同顶点之间都存在 简单通路(使用反证法证明)。

连通分支
极大连通子图
图G中顶点之间的连通关系是一个等价关系。图G的连通分支(connected componet)是G的连通子图,且不是G的另一个连通子图的真子图。也就是说,图G的连通分量是G的极大连通子图。通常用
连通分支个数的性质:
NOTE
显然,不连通的图具有两个或两个以上不相交的联通子图。 根据该关系可将顶点集合V划分成一些等价类
顶点、边与连通分支个数的关系:
设G是具有
NOTE
当G的一个连通分支是
在一个图中两个顶点之间通路的数目,可以用这个图的 邻接矩阵 来确定。

有向图中的连通
由于有向图带有方向,所以会分为强弱连通性:
- 强联通性(strongly connected):有向图是强连通的,如果有
到 和从 到 的路径。 - 弱连通性(weakly connected) :如果简单无向图的每两个顶点之间都有一条路径,则有向图是弱连通的。
- 存在有向
路,则称 是从 可达的。若 互相可达,则称 是双向连通的 - 若对
中任何两顶点,至少有一顶点可从另一顶点可达,则称 是单向连通图 - 若
中任何两顶点都是双向连通的,则称 是双向连通图或强连通图 - 强连通分支(strongly connected component):The maximal strongly connected subgraphs, are called the strongly connected components or strong components of
.
欧拉通路和哈密顿通路, Euler and Hamilton Paths
欧拉的图
欧拉图
欧拉通路(Euler Path):包含着G的==每一条边==的简单==通路== 边不重复,顶点可重复欧拉回路(Euler Circuit):是包含着G的==每一条边==的简单==回路== 欧拉图(Euler Graph):包含==欧拉回路==的图
欧拉回路和欧拉通路的充要条件:
- 连通多重图是欧拉图当且仅当它的 每个顶点的度都为偶数。
- 连通多重图具有欧拉通路而无欧拉回路,当且仅当它恰有两个奇数度顶点。
[! ] 欧拉回路充要条件的证明: 首先,我们来证明充分性,即存在欧拉回路则图中的所有顶点的度数必然为偶数。在图中任取一点,以该点作为起点,沿着欧拉回路走,当前顶点的出度为1,然后经过其它的顶点,注意到如果欧拉路径经过一个顶点(包括起点),它必然离开这个点,这样出入度之和为偶数,直到所有的边逐一被走过,回路的终点在起点处结束,使得起点的入度加1,这样经过起点的度数和变成偶数,欧拉回路结束(注意到我们未加说明的假设了边的个数是有穷的,因此这个过程必然结束)。
其次,我们来证明必要性,即如果连通图中所有顶点的度数为偶数,则必然存在欧拉回路。我们通过构造性的存在性证明来说明这一点。首先,我们在连通图中找寻一条回路(回路的选取是任意的并且总是能找到的,由上述充分性的证明可以有效的说明这一点),如果这条回路就是欧拉回路,那么结论已然成立了,否则,我们删除掉该回路中的所有边,出现孤立的顶点就忽略它,那么子图(不一定是连通的,并且仍然满足所有顶点的度数都是偶数的性质)与删除掉的回路一定有公共顶点(图的连通性保证了这一点),以该点作为起点继续找寻回路,然后删除,续行此法,直到所有的边都被删除为止(同上述充分性的证明中一样,边的个数的有穷性保证了这个过程必然结束),所有这些删除的回路连接起来就构成了一条欧拉回路。
[! ] 欧拉通路充要条件的证明: 先来证明充分性,即存在欧拉通路则图中有且只有两个顶点的度数为奇数,其他顶点的度数皆为偶数,注意到由于起点和终点是不同的,因此欧拉通路的起点和终点必然是两个奇数度的顶点,此外,不可能再有其他的奇数度的顶点了,因为我们沿着欧拉通路的起点走开来,只要经过一个顶点必然离开该顶点,一条入度边搭配一条出度边,共同为该顶点贡献偶数度,直到到达终点为止(当然,也可能再离开,只要终点还有边没有被走过)。
接下来,我们来证明必要性,即连通图中有且只有两个奇数度顶点,则必然存在欧拉通路,怎么来证明这一点呢?一种非常巧妙的方式是把欧拉通路做成欧拉回路,换句话说,我们连接两个奇数度顶点,这样连通图中所有顶点的度数均为偶数,由刚刚证明的定理1可知,该连通图存在欧拉回路,注意到只需把我们自己增加的那条辅助边删除,便证明了欧拉通路的存在性,我们再一次借助构造性的存在性证明来证明了这一点。
有向图中的条件:
- 没有孤立顶点的有向多重图含有欧拉回路的充要条件:弱连通且每个顶点的出度和入度相等。
- 没有孤立顶点的有向多重图含有欧拉通路但不含欧拉回路的充要条件:弱连通且除去两个顶点外每个顶点的出度和入度相等,其中一个顶点的出度比入度大1,另一个顶点的入度比出度大1。
哈密顿的图
哈密顿图
哈密顿通路(Hamilton Path):访问图G中每个顶点次数有且仅有一次的通路。 哈密顿回路:仅访问每个顶点一次(始点除外),始点同样也是终点。
**哈密顿图(必要条件)):**
**狄拉克定理(充分条件)**:
如果
狄拉克定理的引理(哈密顿图的充分条件):设
**奥尔定理(哈密顿图的充分条件)**:
如果
闭包和哈密顿图:简单图
推论:
- 若
是完全图,则 是Hamilton图。 - 若
中任意不相邻顶点 均满足 ,则 是Hamilton图。
设
是一个图,反复连接满足 的不相邻顶点 ,直到没有这样的顶点对为止,这样得到的图称作图G的闭包,记为 。
哈密顿图的必要条件:设
有向图与哈密顿图:设
若有向图D中每两个顶点之间恰有一条弧,则称D为竞赛图,存在以下性质:
最短通路问题, Shortest Path Problem
加权图(Weighted Graph):对图的每一条边赋予一个权值。
Dijkstra

迪克斯特拉算法求出连通简单无向带权图里两个顶点之间最短通路的长度。
最近邻居法
旅行商问题:设有

可平面图, Planar Graphs
平面图
如果一个图形没有任何边交叉,那么它就是**平面(planar)**的。
平面图
如果一个图能画在平面上,使得它的边仅在端点相交,则称这个图为平面图,或说它是可平面嵌入的。 平面图
图的平面表示将平面划分为面(region),包括无界的面(unbounded region);其中恰有一个无界的面(an unbounded region),称为外部面。
一条连续的、自身不相交的封闭曲线称为Jordon曲线。
引理:设J是一条Jordon曲线,任何连接J的内点与外点的曲线必与J相交。
欧拉公式:

推论:
给定平面连通图G,则G的所有平面嵌入有相同的面数。
The concept of the degree of a region(面的度):the number of edges on the boundary of this region.
如果
是一个连通平面简单图,有 条边和 个顶点,其中 ,那么 。 
如果
是一个连通平面简单图,有 条边和 个顶点,其中 ,且没有长度为3的圈,那么 
在连通平面简单图G中,至少存在一个顶点
,使 。 
库拉图斯基定理(KURATOWSKI'S Theorem)
若一个图是平面图,则通过删除一条边
定理(判定非平面图的充要条件):一个图是非平面图当且仅当它包含一个同胚于
显然,含有
或 同胚子图的图是非平面的。然而,反向的证明是复杂的,这里就不给出了。
图着色, Graph Coloring
图
完全图的最少颜色数为
,即 。完全二分图只需要两种颜色(分别涂两个集合)即可。
一些特殊情况:
当且仅当 为完全断开的(totally disconnected) 当且仅当 是一个寄圈(odd cycle) 往证
是 可着色的。对 的顶点数施行归纳法
五色定理:任何无自环的平面图G是5可着色的。
四色定理:任何平面图是4可着色的。
树
树的概述和应用
数
没有简单回路的连通无向图称为树。 每个连通分支均为树的图称为森林。
定理:树中至少有两个结点的度数为1。
证明:设树
,因为 是一个连通图,所以对于任意 有 且 。若每个结点的度数都大于等于2,那么 与前文矛盾;若只有一个结点度数为1,则 也矛盾。所以至少有两个结点的度数为 .
树的等价定义:
- 无回路的连通图
- 没有回路且
- 连通且
- 没有回路,但增加一条新边,得到一个且仅有一个回路
- 连通,但删去任一边后便不再连通
- 每一对结点之间有一条且仅有一条路
无向图是树的充要条件:一个无向图是树当且仅当在他的每对顶点之间存在唯一简单通路。

有根树(Rooted tree) 是指定一个顶点作为根并且每条边的方向都离开根的树。
A rooted tree is called an m-ary tree(m叉树) if every internal vertex has no more than m children. The tree is called a full m-ary tree (满m叉树) if every internal vertex has exactly m children. An m-ary tree with m = 2 is called a binary tree(二叉树).
顶点与边的关系:带有
内点和顶点的关系:带有
对于一个满m叉树,当他的顶点
高度为
树的遍历, Tree Traversal
前序遍历、中序遍历和后序遍历
生成树, Spanning Trees
若图
基本定理:G是连通图当且仅当G有生成树。
证明:首先,假设G有生成树,则G是连通的。假设G是连通的 => 产生一个生成树。
最小生成树, Minimum Spanning Trees
Kruskal算法和Prim算法。
最小生成树不一定唯一。
计数
计数基础(就是常识可不看)
- 乘积法则(Multiplication Rule)
如果一个事件可以分为多个步骤完成,并且每个步骤都有固定的选择方式,那么所有选择的总数是各步骤选择数目的乘积。
定义: 若完成一个事件需要
- 求和法则(Addition Rule)
如果一个事件可以通过几种互斥的方式发生,那么这些方式的总数是各方式数目的和。
定义: 若一个事件可以通过
- 减法法则(容斥原理)
当两个事件不是互斥时,其并集的总数需要从各事件的总和中减去它们的交集部分,以避免重复计数。
定义: 若事件 AA 有 ∣A∣ 种方法,事件 BB 有 |B| 种方法,且两事件有交集 A∩B,则:
- 除法法则(Division Rule)
当一个事件的所有可能结果可以分为若干个等价的类别(每个类别包含相同数量的结果),总数等于所有可能结果数除以每个类别的大小。
定义: 如果某个事件的所有可能性可以划分成
鸽巢原理, The Pigeonhole Principle
鸽巢原理:
推论:一个从有
鸽巢原理指出当物体比盒子多时一定至少有2个物体在同一个盒子里。但是当物体数超过盒子数的倍数时可以得出更多的结果。例如,在任意21个十进制数字中一定有3个是相同的。
广义鸽巢原理:如果
定理三: 每个由
拉姆齐理论(Ramsey thepry)
背背背
- 证明对每个整数
,存在一个数是 的倍数且在它的十进制表示中只出现 和 。

排列与组合, Permutations and Combinations
集合的排列与组合是不允许重复选取的基本计数模型 设S是n元集
- 从S中有序选取的r个元素称为S的一个r排列,S的不同r排列总数记作P(n,r).R=n的排列称作S的全排列,或简称为S的排列.
- 从S中无序选取的r个元素称为S的一个r组合,S的所有r组合的总数记作C(n,r)。
二项式系数和恒等式,(Binomial Coefficients and Identities)
具有n个元素的r组集合记作
在涉及二项式定理的证明中,可以通过给
二项式定理推论:
帕斯卡恒等式
范德蒙德恒等式
广义排列与组合(Generalized Peruitations and Combinations)
隔板法的一般化:
去重的一般化:
高级计数
数论补充
整除
整除具有传递性、加法运算、整系数线性组合。
递推关系, Recurrence Relations
线性递推, Linear Recurrence Relations
分治算法, Divide-and-Conquer Algorihtms and Recurrence Relations
生成函数,Generating Function
容斥原理, Inclusion-xclusion
容斥原理:



评论区