烂完了。

Lecture 1

懂得都懂。

正度 $d^+$: 出度,负度 $d^-$: 入度。

Lecture 2

  • 生成子图/支撑子图:所有点,部分边;
  • 导出子图:部分点。

$\Gamma(v)$ 是邻域,正负和上面相同。

关联矩阵:$(x, y)\in E, w_{x, y} = 1, w_{y, x} = -1$.

简单路径:无重边,初级路径:无重边、无重点。

每点度数至少是 $3$,则存在带弦环。

取极长的一条道路即可。

有向图的连通性:视作无向图的连通性。

没有割点的极大连通子图:块。

Lecture 3

Hamilton

任意两点 $d(u)+d(v)\ge n-1$,则存在 Hamilton 道路

取极长道路,若长度 $l<n$,$(1, p), (p-1,l)$ 给出了极长道路导出的一个回路,存在性由度数和保证。然后再多接一个点到环上就可以完成拓展。

任意两点 $d(u)+d(v)\ge n$,则存在 Hamilton 回路

先用上面的,然后最后一步回路的存在性由度数和保证。

若任意一点 $d(u)\ge \frac{n}{2}$,则存在 Hamilton 回路。

例题:$n(>2)$ 个人中任意两个人能认识其他 $n-2$ 个人。在 $i, j$ 不认识的时候,证明其他人必然同时认识 $i, j$,于是存在 Hamilton 道路。

若 $(v_i, v_j)$ 不相邻,但 $d(v_i)+d(v_j)\ge n$,则图中是否加入 $(v_i, v_j)$ 对 Hamilton 回路 的存在性等价。

Proof: 如果 $G+(v_i,v_j)$ 中不包含 $(v_i,v_j)$,成立;如果包含,断掉该边后可以再找出一个环,这由度数和保证。

闭合图:不断加入满足上述条件的边。闭合图是唯一的。

简单图存在 Hamilton 回路 等价于 其闭合图存在 Hamilton 回路。

旅行商问题

旅行商问题:正权完全图上最小权 Hamilton 回路。

分支定界法:边权排序,带剪枝地搜;

便宜法:从任意一个点开始,一开始是自环,找一个和环“最近”的(看边权),如果是 $k$,和 $t$ 最近,$t$ 分别连向 $t_1, t_2$,找使得环长增量较小的一边加进去。可以得到最优解 $2$ 倍内的解。

Lecture 4

Ford: 重复执行以下操作:从 $2\to n$ 枚举,用前驱节点松弛。

不存在负权环的话,至多 $n-1$ 轮就结束了。

关键路径

关键路径:正权 DAG。$\pi(i)$:源点到当前点的最长路径(当前工序最早的启动时间),关键路径就是取到 $\max$ 的路径,不能延误。

$\tau(i)$:最晚完工时间,反过来推就行。$\tau(i, j)$:工序最晚启动时间:

$$ \tau(i,j)=\tau(j)-w(i,j) $$

最大允许延误时间:

$$ \Delta(i, j)=\tau(i, j)-\pi(i) $$

中国邮路

中国邮路:正权联通图中,经过每条边至少一次再返回出发点的最短回路。

  1. G 存在欧拉回路 $\to$ 取欧拉回路;
  2. G 有两个点 $a, b$ 度数为奇数: $a$ 到 $b$ 的最短路 + 某一条 $a$ 到 $b$ 的欧拉道路。

"$L$ 是最佳邮路" 当且仅当 "$L$ 中每条边至多重复一次 + $G$ 的任意回路上重复边的长度之和不超过回路长度的一半"

Proof:

其实就等价于给一些重边,使得新图有欧拉回路。

$\to$

  1. 如果超过一次,可以去掉偶数次,仍然保留欧拉回路。
  2. 如果某个环上长度和超过了一半,换成环上另外那些边会更优。

$\leftarrow$

设 $L_1, L_2$ 满足条件,证明他们权值相等。

取对称差,这是重复的边的子集,构成若干个环。由第二个条件,可以得到互相 $\le$,从而权值相等。

构造中国邮路:先随便取重复的边集,然后枚举环看要不要 flip。

Lecture 5

支撑树:生成树。

有向联通图关联矩阵的 $\operatorname{rank}=n-1$。

Proof: 考虑需要的最少行使得线性相关。如果 $<n$,把这些行,和在这些行非零的列挪到左上角,可以看出得到两个联通分支,与联通矛盾。

基本关联矩阵:删掉某一行(代表某个节点)的 $\operatorname{rank}=n-1$。

树的基本关联矩阵(方阵)满秩。

$G$ 的基本关联矩阵 $B_k$ 的 $n-1$ 阶子式行列式非零等价于这些列构成一棵生成树。

基本关联矩阵 $B_k$ 的 $m$ 阶子式行列式是 $0,1,-1$。

  • 存在一列全 $0$:$0$;
  • 任意列都有两个非零,线性相关,$0$;
  • 存在一列只有一个非 $0$,按这列展开,归纳。

Matrix-Tree: 生成树个数 $=\det (B_k B_k^T)$ (注意转置在后面)

根树:外向树。

$\hat{B_k}$ 是把 $B_k$ 中所有 $1$ 改成 $0$ 后的矩阵,那么根树/外向树个数 $=\det(\hat{B_k} B_k^T)$。

${B_k}^T$ 的部分负责树,$\hat{B_k}$ 的部分负责外向树。

Lecture 6

回路矩阵

完全回路矩阵 $C_e$:全部初级回路,$C_{i,j}$ 表示第 $i$ 个环里 $e_j$ 是否在、是否同向(给一个定向)

基本回路:选定生成树后,每条余树边给出一个基本回路。基本回路的方向规定为余树边的方向。

基本回路矩阵 $C_f$ 是 $(m-n+1)\times m$ 的矩阵,且 $\operatorname{rank}(C_f) = m - n + 1$。

Sylvester: $A\in M_{n,s}, B\in M_{s,m}, AB=0$,则 $\operatorname{rank}(A)+\operatorname{rank}(B)\le s$。

$$ BC_e^T = BC_f^T =0 $$

可以设 $C_f = (I, C_{f_{12}})$,$C_{f_{12}}$ 表示树边的情况。此时如果 $B_k=(B_1, B_2)$,则有:

$$ C_{f_{12}} = -B_1^T B_2^{-T} $$

回路矩阵:线性无关的 $m-n+1$ 个回路组成的矩阵 $C$。于是有 $C=PC_f$,其中 $P$ 可逆。

回路矩阵 $C$ 的一个 $m-n+1$ 阶子式行列式非零,当且仅当这些列对应 $G$ 的一棵余树(剩下部分是树)

割集矩阵

割集:极小的,使得连通块变多的边的子集。可以给割集中每条边定义方向,从而可以定义完全割集矩阵 $S_e$。

基本割集:确定生成树后任选一条树边,加上必须的那些非树边。

基本割集矩阵 $S_f$:$\operatorname{rank}(S_f)=n-1$。

$S_e C_e^T=0$

因为割集和回路重复的边数是偶数。

割集矩阵:线性无关的 $n-1$ 个割集组成的矩阵 $S$。于是 $S=PS_f$,其中 $P$ 可逆。

Huffman 树

最优长度二进制编码。

最短树

你是否想搜:最小生成树

Kruskal

按边权从小到大能加就加。

线性建堆的话,复杂度是 $\mathcal{O}(m+p\log m)$,其中 $p$ 是迭代次数。

Prim

不断扩展距离已扩展节点最近的节点。

Lecture 7

欧拉定理:对平面联通图 $G$,$n-m+d=2$,$n,m,d$ 分别是点、边、面(区域)

Proof: 从生成树不断加边。

还有:$n-m+d=k+1$,$k$ 是连通块个数。

若平面图没有割边,切每个域边界数至少为 $t$,则 $m\le \dfrac{t(n-2)}{t-2}$

Proof: $t\times d\le 2m$,则 $2-n+m=d\le \frac{2m}{t}$

极大平面图:$m=3n-6, d=2n-4$。

平面图不含 $K_3$,则 $m\le 2n-4$。

简单平面图 $G$ 中有度数 $< 6$ 的节点。(所以直接得到 $K_7$ 不是平面图)

$G$ 是平面图,当且仅当缩掉二度点后没有 $K_5,K_{3,3}$ 子图。

对偶图 $G^*$ 是连通图。

若 $G$ 是平面联通图,则 $(G^*)^*=G$。

$G$ 的初级回路对应 $G^*$ 的一个割集。

$G$ 有对偶图,当且仅当 $G$ 是平面图。

平面图可面 $5-$ 染色。

Proof: 转成对偶图的点 $5-$ 染色。使用平面图存在 $d(v)\le 5$,删掉该点做归纳。利用五个点中平面图上相邻的两个,构造一个闭环,然后说明可以翻转一些点的颜色。

若平面图有 Hamilton 回路,则四色猜想成立。

若 $3-$ 正则平面图的平面都可 $4-$ 染色,那么任意图都可以。

这就是经典三度化。

Lecture 8

最大匹配

匈牙利。

完全/完美匹配

完全匹配:匹配数为 $|X|$.

完美匹配:匹配数为 $|X| = |Y|$.

Hall 定理:$(X,Y,E)$,存在 $X$ 到 $Y$ 的完全匹配,等价于任意 $X$ 的子集 $A$ 有 $|\Gamma(A)|\ge |A|$。

$\leftarrow$,考虑未匹配点 $x_0$ 能涉及到的所有右部点,然后构造集合,根据这些右部点和他们匹配的左部点的唯一性得到矛盾。

取:

$$ \delta(G)=\max (|A| - |\Gamma(A)|) $$

$A$ 是 $X$ 的子集。于是 $X$ 到 $Y$ 的最大匹配是 $|X| - \delta(G)$.

最大匹配 = 最小覆盖。

最佳匹配

KM。

Lecture 9

网络流图:有向联通图(无自环),一个源一个汇

割切:点集 $S$,$s\in S, t\notin S$,那么所有有向边 $(i, j), i\in S, j\notin S$,是一个割切 $(S, \bar{S})$。

最大流 = 最小割切的容量。

Ford-Fulkerson

标签: none

添加新评论