图论常用奇技淫巧
最短/最长路:
极大极小取法
Euler图的证明 S = { G ∣ G 连 通 且 无 奇 度 顶 点 , G 不 是 Euler图 } S=\{G|G连通且无奇度顶点,G不是\text{Euler图}\} S={G∣G连通且无奇度顶点,G不是Euler图}
取出边最少的图
Dirac定理证明 S = { G ∣ G 最 小 度 δ ≥ ν 2 , G 不 是 Hamilton图 } S=\{G|G最小度\delta\ge\frac{\nu}{2},G不是\text{Hamilton图}\} S={G∣G最小度δ≥2ν,G不是Hamilton图}
取出边最多的图
必有最小支配集 D D D,使得: ∀ v ∈ D , ∃ u ∈ V − D \forall v \in D,\exist u \in V - D ∀v∈D,∃u∈V−D, N ( u ) ∩ D = { v } N(u)\cap D=\{v\} N(u)∩D={v},取 G [ D ] G[D] G[D]边数最多的那个最小支配集。再用反证法。
若 α ≥ κ ⇒ \alpha\ge\kappa\Rightarrow α≥κ⇒Hamilton图
取最长的圈
取临界色图和最佳边染色
任二奇圈都有公共点,则 χ ≤ 5 \chi\le5 χ≤5,取最小的圈,这个圈在原图中肯定没有弦,可以3正常染色。去掉这个圈,剩下的一定不是奇圈,故是二部图,二部图是2正常可染的。证毕。
Vitaver;Roy;Gallai,有向图 G → \overrightarrow{G} G必有长为 χ ( G ) − 1 \chi(G)-1 χ(G)−1的有向路
删去最小弧集 A ′ A' A′使得 G → − A ′ \overrightarrow{G}-A' G−A′不含有向圈。证明有向路的起点与终点异色,证明任意弧的两端异色。这里取了距离作为一个参考,同时,在证明二部图等价无奇圈时也用了点到其他点的距离作为参考构建。
Tutte给图添加极多的边不能再添加,使得再添加一条边就会有完美匹配。(和临界色图思想类似,再去掉一条边色数就会减少)
数学归纳法:
平均数中值法
最难的Dirty inspiration:
有关支配集,独立集,覆盖集
α ≥ γ \alpha\ge\gamma α≥γ 因极大独立集一定是极小支配集,一个集合是独立集,又是支配集,则一定是极大独立集。
α ≤ κ \alpha\le\kappa α≤κ当任二不相邻顶点度数之和大于等于顶点数(Bondy点独立和连通度)
若 α ≥ κ ⇒ \alpha\ge\kappa\Rightarrow α≥κ⇒Hamilton图(Chvatal点独立和Hamilton性)
α + β = ν \alpha+\beta=\nu α+β=ν因点覆盖和点独立恰好互补
α ′ ≤ β \alpha'\le\beta α′≤β因最大匹配中每条边至少有一个点覆盖,二部图取得等号
对于二部图 α ′ = β \alpha'=\beta α′=β(Konig)
⌈ ν 1 + Δ ⌉ ≤ α ′ ≤ ⌊ ν 2 ⌋ \lceil\frac{\nu}{1+\Delta}\rceil\le\alpha'\le \lfloor\frac{\nu}{2}\rfloor ⌈1+Δν⌉≤α′≤⌊2ν⌋对边作数学归纳,讨论分星图和非星图,不等式放缩。
Gallai α ′ + β ′ = ν \alpha'+\beta'=\nu α′+β′=ν先证明 α ′ + β ′ ≤ ν \alpha'+\beta'\le\nu α′+β′≤ν(从最大匹配的角度出发),再证 α ′ + β ′ ≥ ν \alpha'+\beta'\ge\nu α′+β′≥ν(从最小边覆盖导出子图出发)
由4,8得 α + β = α ′ + β ′ = ν \alpha+\beta=\alpha'+\beta'=\nu α+β=α′+β′=ν
α ′ ≤ β ′ \alpha'\le\beta' α′≤β′当且仅当图有完美匹配时取得等号,因覆盖最大匹配 M ∗ M^* M∗关联的 2 M ∗ 2M^* 2M∗点至少需要 ∣ M ∗ ∣ |M^*| ∣M∗∣个条边
α ≤ β ′ \alpha\le\beta' α≤β′覆盖点独立集 I I I至少需要 ∣ I ∣ |I| ∣I∣条边,(也可由9和5联合推出)二部图取得等号
** γ \gamma γ是最小的, α \alpha α和 β \beta β之间没有确定的大小关系其他的都有总的来说 只需要记住 α ′ ≤ β \alpha'\le\beta α′≤β, α ′ ≤ β ′ \alpha'\le\beta' α′≤β′ **
染色理论
平面图
有向图
网络流与割
零流不一定是零值流。流量最大的流被称为最大流
( S , S ˉ ) (S,\bar{S}) (S,Sˉ)表示头在 S ˉ \bar{S} Sˉ尾在 S S S中的弧集,若 x ∈ S , y ∈ S ˉ x\in S,y\in \bar{S} x∈S,y∈Sˉ,则 ( S , S ˉ ) (S,\bar{S}) (S,Sˉ)称为一个割,割的容量是那些弧的所有容量,实际上就是指从 S S S里流出来的量。显而易见,一定存在最小割。给定 S S S,无非有三种弧,出来的弧:割;进去的弧:反过来的割;两端都在 S S S里的,这些弧上的流量要么在 S S S里面转圈,要么把流量传给其他两种弧。
Val f = f + ( S ) − f − ( S ) \text{Val}~f=f^+(S)-f^-(S) Val f=f+(S)−f−(S),其中 f f f是任意流, S S S是任意割
任一可行流 f f f,和任一割: Val f ≤ Cap K \text{Val}~f\le\text{Cap}~K Val f≤Cap K,等号成立当且仅当 ( S , S ˉ ) (S,\bar{S}) (S,Sˉ)都是饱和的而 ( S ˉ , S ) (\bar{S},S) (Sˉ,S)都是零。意思就是那个从 S S S出来的都是饱和的,进去的都是0。不管内部的流究竟是怎么流通的,只要保证我出来的一定是饱和的进去的都是0就行了,里面再是无穷大的流量在流动,那也只是内部能量在打转,没有释放出来。
4的推论:若 Val f = Cap K \text{Val}~f=\text{Cap}~K Val f=Cap K,则 f f f是最大流, K K K最小割。
最大流最小割定理若 f f f最大流, K K K最小割,则 Val f = Cap K \text{Val}~f=\text{Cap}~K Val f=Cap K
5,6构成一个流成为取得最大流的充要条件是最小割取得最小割容量
底图中的任一两点 u , v u,v u,v之间的路称为 u v uv uv路,源地和汇点组成 x y xy xy路
可增路:正向弧不饱和,反向弧大于零。可增的流量$\Delta f = \min\limits_{a\in P} \Delta f(a) $
最大流的标号算法:一个点只能获取一次标号,当前点的入邻点流量不为零才获得当前点标号和流量的最小值,表示这个点能退回去的最小值。出邻点的流量不饱和的获得的标号是当前标号和流量的最小值,表示还能增加的流量。
习题9.15来自习题9.5
利用最大流可以求出二部图的最大匹配(完美匹配)
最小费用流:流量固定,使得费用最少。增量网络:非饱和,正弧,非0,反弧。反弧费用都是负数。注意:这里的费用指的是单价。饱和弧只有反弧,0弧只可能有正弧。
一个流一定可以表示成另外一个流和其增量网络的可行流的叠加。只需要适配一下这个增量网络的各个权值要么正弧等于0,要么反弧等于0(适配的时候注意饱和弧和0弧)。注意:如果没有弧,则默认这条弧的容量等于0。
若 f f f是流量为0的流,但不是零值流,则 f f f可表示成若干个圈流之和。用非零流的边导出子图,导出子图必有一个圈,每条弧的流量都减去这些流当中的最小值。得到至少一条零流弧。有限步内可以做完。
f f f是最小费用流当且仅当 N ( f ) N(f) N(f)没有负费用圈流。
最小费用流有向负圈算法:先找一个可行流,再从增量网络里面去寻找负费用有向圈。删除这个圈。继续寻找。直到没有负费用圈。负费用圈的意思是圈上单价之和为负数。
(下面自己的证明(好像是错的)) Δ ( G ) ≤ χ ′ ( G ) ≤ Δ ( G ) + 1 \Delta(G)\le\chi'(G)\le\Delta(G)+1 Δ(G)≤χ′(G)≤Δ(G)+1
我们来证明上界,首先证对于 ν − \nu- ν−阶 Δ \Delta Δ 正则图 G ′ , χ ′ ( G ′ ) ≤ Δ ( G ′ ) + 1 G',\chi'(G')\le\Delta(G')+1 G′,χ′(G′)≤Δ(G′)+1 。
对 ν ≥ 2 \nu\ge 2 ν≥2 奇偶分类(也可使用数学归纳法证明)
偶数:因 χ ′ ( K 2 n + 2 ) = 2 n + 1 \chi'(K_{2n+2})=2n+1 χ′(K2n+2)=2n+1, K 2 n + 2 K_{2n+2} K2n+2可以看作是由 2 n + 2 − 2n+2- 2n+2−阶 Δ \Delta Δ正则图 G ′ G' G′ 每个点添加 2 n − Δ + 1 2n-\Delta+1 2n−Δ+1条边生成,故 χ ′ ( G ′ ) ≤ χ ′ ( K 2 n + 2 ) − ( 2 n − Δ + 1 ) = 2 n + 1 − 2 n + Δ − 1 = Δ ≤ Δ ( G ′ ) + 1 \chi'(G')\le\chi'(K_{2n+2})-(2n-\Delta+1)=2n+1-2n+\Delta-1=\Delta\le\Delta(G')+1 χ′(G′)≤χ′(K2n+2)−(2n−Δ+1)=2n+1−2n+Δ−1=Δ≤Δ(G′)+1
奇数:因 K 2 n + 1 K_{2n+1} K2n+1是 K 2 n + 2 K_{2n+2} K2n+2的子图,显然 χ ′ ( K 2 n + 1 ) ≤ χ ′ ( K 2 n + 2 ) = 2 n + 1 \chi'(K_{2n+1})\le\chi'(K_{2n+2})=2n+1 χ′(K2n+1)≤χ′(K2n+2)=2n+1, K 2 n + 1 K_{2n+1} K2n+1可以看作是由 2 n + 1 − 2n+1- 2n+1−阶 Δ \Delta Δ正则图 G ′ G' G′ 每个点添加 2 n − Δ 2n-\Delta 2n−Δ 条边生成
故 χ ′ ( G ′ ) ≤ χ ′ ( K 2 n + 1 ) − ( 2 n − Δ ) ≤ χ ′ ( K 2 n + 2 ) − 2 n + Δ = 2 n + 1 − 2 n + Δ = Δ ( G ′ ) + 1 \chi'(G')\le\chi'(K_{2n+1})-(2n-\Delta)\le\chi'(K_{2n+2})-2n+\Delta=2n+1-2n+\Delta=\Delta(G')+1 χ′(G′)≤χ′(K2n+1)−(2n−Δ)≤χ′(K2n+2)−2n+Δ=2n+1−2n+Δ=Δ(G′)+1
对于任意一个最大度为 Δ \Delta Δ ν \nu ν阶的图 G G G都有一个对应的 Δ \Delta Δ正则图 G ′ G' G′ 使得 G G G是 G ′ G' G′的子图
故显然 χ ′ ( G ) ≤ χ ′ ( G ′ ) ≤ Δ ( G ) + 1 \chi'(G)\le \chi'(G')\le \Delta(G)+1 χ′(G)≤χ′(G′)≤Δ(G)+1