离散数学之图
圖的概念
圖 GGG 的定義:G=<V,E,φ>G = <V,E,\varphi>G=<V,E,φ>。其中,VVV 是點集,EEE 是邊集,φ\varphiφ 是點與邊的對應關系
點 aaa 到點 bbb 的有向邊,記<a,b><a,b><a,b>;點 aaa 到點 bbb 的無向邊,記(a,b)(a,b)(a,b)
邊與其兩個端點相連。無向圖中,稱之為關聯;有向圖中,稱之為相鄰
點的度:該點作為邊端點的次數
孤立點:度為 0 的點
懸掛頂點:度為 1 的點
懸掛邊:懸掛頂點的邊
平行邊:兩條邊的起點和終點分別相同
環:起點和終點是同一個點的邊
圖 GGG 的最大度,記 Δ(G)\Delta (G)Δ(G);最小度,記 δ(G)\delta (G)δ(G)
有向圖還細分為出度、入度
握手定理:無向圖和有向圖中,所有頂點度數之和等于圖的邊數的二倍;有向圖中,所有頂點出度之和等于所有頂點入度之和等于圖的邊數
數列可圖化,當且僅當數列所有元素之和為偶數
多重圖:含平行邊的圖
簡單圖:不含平行邊和環的圖
nnn 階完全圖:有 nnn 個頂點的完全圖,記為 KnK_nKn?
完全無向圖:每個節點都與其余節點相連,構成的簡單無向圖;
完全有向圖:每對節點中都有相反的兩條有向邊,構成的簡單有向圖
正則圖:所有頂點的度數都一樣。完全圖是正則圖的特例
子圖:對原來圖中的邊和節點進行刪減后的圖
生成子圖:對原來圖中的邊進行刪減后的圖。生成子圖是子圖的特例
帶權圖:邊有權值的圖
圖的聯通性
通路、回路
初級通路(路徑)、初級回路(圈):所有的點不同
簡單通路、簡單回路:所有的邊不同
連通圖:任意點都是連通的;等價定義,連通圖的連通分支為 1
連通分支:連通關系的導出子圖,記 W(G)W(G)W(G)
強連通圖:有向圖中,任意兩個節點都相互可達
單向連通圖:有向圖中,任意兩個節點至少存在一個點到另一個點
弱連通圖:將有向圖變為無向圖,仍然是連通圖
點割集與邊割集
G?vG-vG?v:在圖 GGG 中刪除點 vvv 以及關聯的邊
G?V′G-V'G?V′:在圖 GGG 中刪除集合 V′V'V′ 中所有的點以及點所關聯的邊
G?eG-eG?e:在圖 GGG 中刪除邊 eee
G?E′G-E'G?E′:在圖 GGG 中刪除集合 E′E'E′ 中所有的邊
設 V′V'V′ 是 VVV 真子集,V′′V''V′′ 是 V′V'V′ 真子集。首先進行 G?V′G-V'G?V′ 操作后,是非連通圖,再將原來的圖進行 G?V′′G-V''G?V′′ 操作后,連通性不變。則 V′V'V′ 就是點割集。點割集只含一個元素,則該元素稱之為割點
設 E′E'E′ 是 EEE 真子集,E′′E''E′′ 是 E′E'E′ 真子集。首先進行 G?E′G-E'G?E′ 操作后,是非連通圖,再將原來的圖進行 G?E′′G-E''G?E′′ 操作后,連通性不變。則 $ E’ $ 就是邊割集。邊割集只含一個元素,則該元素稱之為橋
鄰接矩陣和可達矩陣
出度是所有橫向元素和,入度是所有縱向元素和
A1,A2,...,AnA^1, A^2,...,A^nA1,A2,...,An 矩陣的第 [i][j][i][j][i][j] 個元素代表長度為 1,2...,n1,2...,n1,2...,n 從 viv_ivi? 到 vjv_jvj? 的邊的個數
A1,A2,...,AnA^1, A^2,...,A^nA1,A2,...,An 矩陣的主對角線元素之和代表長度為 1,2...,n1,2...,n1,2...,n 的回路個數
A1,A2,...,AnA^1, A^2,...,A^nA1,A2,...,An 矩陣的所有元素之和代表長度為 1,2...,n1,2...,n1,2...,n 的通路個數
無向圖是對稱矩陣;簡單圖是布爾矩陣,且主對角線元素為 0
可達矩陣 PPP,若 viv_ivi? 到 vjv_jvj? 可達,則 $ P[i][j]$ 置 1,否則為 0
可達矩陣主對角線元素全為 1;圖為強連通圖,當且僅當可達矩陣元素全為 1
A1+A2+...+AnA^1+ A^2+...+A^nA1+A2+...+An 得到矩陣,將其非 0 元素改為 1,就是可達矩陣 PPP
歐拉圖
歐拉通路:通過圖中所有邊一次且僅一次的通路
歐拉回路:通過圖中所有邊一次且僅一次的回路
歐拉圖:有歐拉回路的圖
半歐拉圖:有歐拉通路無歐拉回路的圖
歐拉通路是簡單通路;歐拉回路是簡單回路;環不影響歐拉性
無向圖 GGG 為歐拉圖當且僅當 GGG 連通且無奇度頂點
無向圖 GGG 為半歐拉圖當且僅當 GGG 連通且恰有兩個奇度頂點
有向圖 GGG 為歐拉圖當且僅當 GGG 連通且每個頂點出度等于入度
有向圖 GGG 有歐拉通路當且僅當 GGG 連通且恰有兩個奇度頂點,其中一個入度比出度大,另一個出度比入度大一,其余出度、入度相等
哈密頓圖
哈密頓通路:經過圖中所有頂點一次且僅一次的通路
哈密頓回路:經過圖中所有頂點一次且僅一次的回路
哈密頓圖:有哈密頓回路的圖
半哈密頓圖:有哈密頓通路無哈密頓回路的圖
哈密頓通路是初級通路;哈密頓回路是初級回路;環與平行邊不影響哈密頓性
無向哈密頓圖的必要條件:設無向圖 GGG 是哈密頓圖, V1V_1V1? 是 VVV 非空真子集,均有 W(G?V1)?|V1|W(G-V_1) \leqslant |V_1|W(G?V1?)?|V1?|
無向哈密頓圖的充分條件:設 GGG 是 n(n>2)n(n>2)n(n>2) 階無向簡單圖,對任意不相鄰的頂點 u,vu ,vu,v,均有 n?d(u)+d(v)n \leqslant d(u)+d(v)n?d(u)+d(v)
無向哈密通路的充分條件:設 GGG 是 nnn 階無向簡單圖,對任意不相鄰的頂點 u,vu ,vu,v,均有 n?1?d(u)+d(v)n-1 \leqslant d(u)+d(v)n?1?d(u)+d(v)
平面圖
若圖能重新繪制成邊不想交的圖,則稱為平面圖
歐拉公式:設 GGG 為 nnn 階 mmm 條邊 rrr 個面的連通平面圖,則 n?m+r=2n-m+r=2n?m+r=2
樹
樹:無回路的連通無向圖。度數等于 1 的頂點稱作樹葉,度數大于等于 2 的頂點稱作分支點.
平凡樹:平凡圖
森林:每個連通分支都是樹的非連通的無向圖
設 GGG 是 nnn 階級 mmm 條邊無向圖,以下命題等價
最小生成樹
設 GGG 為無向連通圖,GGG 的生成子圖是樹,則稱為生成樹,記 TTT
生成樹的樹枝:GGG 在 TTT 中的邊
生成樹的弦:GGG 不在 TTT 中的邊
余樹:所有生成樹的弦構成的導出子圖
最小生成樹:帶權圖中權值最小的生成樹
最小生成樹的算法:破圈法(刪最大邊)和避圈法(加最小邊)
Kruskal 算法和 Prim 算法都是避圈法
總結