跳转至

點/邊連通度

定義

以下內容的定義,請參見 圖論相關概念

  • 邊連通度、邊割集;
  • 點連通度、點割集;
  • 團。

性質

Whitney 不等式

Whitney 不等式(1932)給出了點連通度 \(\lambda\)、邊連通度 \(\kappa\) 和最小度 \(\delta\) 之間的關係:

\[ \kappa \le \lambda \le \delta \]
證明

直覺上,如果有一個大小為 \(\lambda\) 的邊割集,其中每一條邊任選一個端點,就可以得到一個大小為 \(\lambda\) 的點割集,所以第一個不等式成立。

與度最小的結點(如有多個,任選一個)相鄰的所有邊構成大小為 \(\delta\) 的邊割集,所以第二個不等式也成立。

這個不等式不能改進;換言之,對每個滿足它的三元組,均可以找出滿足這個三元組的圖。

構造

把兩個大小為 \(\delta + 1\) 的團用 \(\lambda\) 條邊連起來,使兩個團分別有 \(\lambda\)\(\kappa\) 個不同的結點被連在這些邊上。

Menger 定理

最大流最小割定理(又名 Ford–Fulkerson 定理)可推出,兩點間的不相交(指兩兩沒有公共邊)路徑的最大數量等於割集的最小大小(這個推論又叫 Menger 定理——譯者注)。

計算

以下圖的邊權均為 \(1\)

用最大流計算邊連通度

枚舉點對 \((s, t)\),以 \(s\) 為源點,\(t\) 為匯點跑邊權為 \(1\) 的最大流。需要 \(O(n^2)\) 次最大流,如果使用 Edmonds–Karp 算法,複雜度為 \(O(|V|^3 |E|^2)\)。使用 Dinic 算法可以更優,複雜度為 \(O(|V|^2 |E| \min(|V|^{2/3}, |E|^{1/2}))\)

全局最小割

使用 Stoer–Wagner 算法 只需跑一次無源匯最小割即可。複雜度為 \(O(|V||E| + |V|^{2}\log|V|)\),一般可近似看作 \(O(|V|^3)\)

點連通度

仍然枚舉點對,這次把每個非源匯的點 \(x\) 拆成兩個點 \(x_1\)\(x_2\),並連邊 \((x_1, x_2)\)。把原圖中所有邊 \((u, v)\) 換成兩條邊 \((u_2, v_1)\)\((v_2, u_1)\)。此時最大流等於 \(s\)\(t\) 之間的最小點割集大小(又稱局部點連通度)。複雜度與用最大流計算邊連通度相同。

本頁面譯自博文 Рёберная связность. Свойства и нахождениеВершинная связность. Свойства и нахождение 與其英文翻譯版 Edge connectivity/Vertex connectivity。其中俄文版版權協議為 Public Domain + Leave a Link;英文版版權協議為 CC-BY-SA 4.0。

延伸閲讀

  • 論文 Connectivity Algorithms 介紹了近年來連通度計算算法的進展。感興趣的讀者可以自行瀏覽。