二分图

在圖論中，二部圖（bipartite graph）是一類特殊的圖，又稱為-{zh-cn:二部图; zh-tw:二分圖; zh-hk:二部圖}-、偶图、雙分圖。二分圖的頂點可以分成兩個互斥的独立集 U 和 V 的圖，使得所有邊都是連結一個 U 中的點和一個 V 中的點。頂點集 U、V 被稱為是圖的兩個部分。等價的，二分圖可以被定義成圖中所有的環都有偶數個頂點。

可以将  和  当做一個着色： 中所有頂點为蓝色， 中所有頂點着绿色，每条边的两个端点的颜色不同，符合图着色问题的要求。相反的，非二分圖無法被二著色，例如 (3 個頂點的完全圖)，將其中一个顶点着蓝色并且另外一个着绿色后，第三个顶点与上述具有两个颜色的顶点相连，无法再对它着蓝色或绿色。

二分图的一种描述方式为：，包含了独立集  和 ，以及边  的資訊。假如不是连通图，可能有多種將所有頂點分成  和 的方式；在特定的應用場合中，將頂點的兩部分、寫出來是有必要的。如果，則  称为平衡二分图。如果二分图  以及 的顶点分別有相同的度數，則  被稱為是。

给定一个二分图 ，在  的一个子图  中， 的边集中的任意两条边都沒有共同的端点，则称  是一个匹配。

例子
二分圖經常出用來研究兩種不同類型的物件之間的關係。例如，如果要討論足球球員和球隊的關係，可以畫一個二分圖，頂點的兩部分分別是所有球員和所有球隊，如果球員受僱於球隊，則在二者之間連邊。這種二分圖模型叫做，經常用於。

另一個例子出現在鐵路規畫問題：給定許多班火車及許多車站，每輛火車中途停靠的站不盡相同，問最少個數的車站集合使得每輛火車都停靠至少一個集合中的車站。以圖論的觀點來看，將火車和車站視為頂點，火車有停靠車站則連邊，問題轉化成是二分圖的點覆蓋問題。

第三個例子出現在古幣學，古代的硬幣有正面及反面之分，不同時期和地區的政府會使用不同的正反面組合，因此，將所有可能的組合畫成圖就是一個二分圖的結構。

其他一般性的例子諸如：

 所有的樹都是二分圖。
 有偶數頂點個數的環 (圖論)是二分圖。
 所有的平面圖滿足各個面的邊界有偶數個邊是二分圖，因此和都是二分圖。
 一個完全二分圖 Km,n 是一個二分圖，滿足兩個頂點集 U、V 分別有 m、n 個頂點，並且任取一個 U 中的點，所有 U 中的頂點都連邊到所有 V 中的頂點。
  是將完全二分圖 Kn,n 扣掉一個完美匹配的所有邊所得到的圖，因此也是個二分圖。
 、、和都是二分圖，而且它們的頂點可以被看做是（一串由0和1組成的字串），使得兩個頂點連邊若且唯若它們只有一個位元是相異的，而它們的二分性的驗證可以藉由考慮兩個獨立集是分別蒐集所有擁有奇數和偶數個1的位元向量。此外，所有的樹和四邊形圖都是中間圖，而所有的中間圖都是部分超方形圖。

特性

等價條件
 一個圖是二分圖若且唯若它不包含奇環作為子圖。
一個圖是二分圖若且唯若它的著色數是 2。
 一個圖是二分圖若且唯若它的谱是正負對稱的。

柯尼希定理

柯尼希定理於1931年，由匈牙利數學家德內斯·柯尼希提出：
一個圖是二分圖若且唯若它的最小頂點覆蓋的頂點數等於最大匹配的邊數。
該定理有一個等價形式，一個圖是二分圖若且唯若它的最大獨立集的頂點數與最大匹配的邊數之和，等於總頂點個數。再配合一個性質，一個沒有孤立頂點的圖會滿足最小邊覆蓋的邊數加上最大匹配的邊數等於總頂點個數，我們有對任何沒有孤立頂點的二分圖，最小邊覆蓋的邊數等於最大獨立集的頂點數，以及最小邊覆蓋的邊數加上最小頂點覆蓋的頂點數等於總頂點數。

完美圖
所有的二分圖和二分圖的線圖，以及它們的補圖都是完美圖。很明顯的，二分圖是完美圖，因為他的著色數和最大點團數皆為 2，但另一方面，二分圖的補圖的完美性是相對難以證明的，該性質等價於前面小節的倒數第二個敘述。類似的，二分圖的線圖的補圖的完美性等價於柯尼希定理的敘述，這也是會如此定義完美圖的動機之一。而最後剩下的，是二分圖的線圖的完美性，而這個等價於柯尼希於早些年證明出的定理：二分圖的邊著色數等於最大度數。

強完美圖定理給出完美圖的等價條件：一個圖是完美圖若且唯若所有奇環和奇環的補圖都不是它的導出子圖。這個刻畫可與二分圖沒有奇環作為子圖類比，實際上，在強完美圖定理的證明中，二分圖、二分圖的線圖，以及它們的補圖佔了 5 個基本類型中的 4 個。

度數 
一個頂點 v 的度數定義為以它為端點的邊數，記做 ，很明顯的，對於二分圖 ，有以下的度數和公式

一個二分圖的度數序列是兩個序列，分別列出 U 和 V 中各頂點的個數。例如完全二分圖 K3,5 的度數序列是 (3,3,3,3,3) 和 (5,5,5)。同構的二分圖會有相同的度數序列，但一般而言，擁有相同度數序列的圖卻不一定是同構的。是給定兩個正整數序列，要尋找出一個二分圖使得它的度數序列是那兩個正整數序列。本問題中的序列中的 0 可以被忽略，因為那只是在為二分圖增加孤立頂點而已。

與超圖及有向圖的關係
一個兩部分分別有 m 和 n 個頂點二分圖的雙相鄰矩陣是一個 (0,1) 矩陣，滿足如果兩個頂點相鄰，矩陣中的該行該列對應到的元素是 1，反之如果兩點不相鄰則對應到 0。雙相鄰矩陣可以用來描述二分圖、超圖和有向圖的等價關係。

超圖的定義如同簡單圖，由頂點和邊組成，但是一個邊可以有超過兩個段點，因為一個邊被重新定義做頂點集合的一個子集合。可以用二分圖 (U,V,E) 來描述超圖，其中 U 是超圖的頂點集合，V 是超圖的邊集合，U、V 中的兩元素 u, v 有連邊若且唯若在超圖中，u 是 v 的一個段點。在這個對應之下，二分圖的雙相鄰矩陣等於它所對應到的超圖的。特別的多重圖 (可能會有不同邊有相同的兩個端點) 可以被視為是超圖的特例，只是每個點都恰有兩個邊而已，根據上述，多重圖對應到的二分圖滿足 V 中的頂點度數皆為 2。

類似的，所有有向圖 (允許兩端點相同的自環) 可以一對一對應到所有平衡二分圖，方法是將有向圖的 n 個頂點複製兩份，得到集合 U、V，U 中的頂點 u 有連邊到 V 中的頂點 v 若且為唯若在原本有向圖中，有一條邊從 u 出發指向 v。此時，有向圖的相鄰矩陣可以是任意  階 (0,1) 矩陣，而且會一對一對應到平衡二分圖的雙相鄰矩陣。

霍尔定理

霍尔定理（)表明了一个二分图G，X与Y分别是两个独立集。X能被Y匹配当且仅当，其中S是X的任意子集。

霍尔定理给出了一种证明完美匹配是否存在的方式，该定理也常常被用于求解SDR问题（system of distinct representatives，不同代表问题）。

在SDR问题中，你拥有n个不同的集合，你需要为每个集合找到一个独特的代表元素。一个集合集拥有SDR当且仅当任意t个集合的并包含t个不同的元素。

霍尔定理有时也被称作霍尔婚姻定理（），用以解决男女的婚姻匹配问题。

演算法

二分性測試 
給定一個圖，使用深度優先搜尋法，可以在線性時間內判斷它是否為二分圖，並輸出一個二著色 (若答案為是)，或是一個奇環 (若答案為否)。方法是先用深度優先搜尋法找出圖的一個深度優先搜尋森林 (各連通部分取一個深度優先搜尋樹)，這是圖的一個生成森林。接著運用樹的搜尋將森林二著色，也就是依序各頂點著和它的父節點相異的顏色。現在檢查原圖中深度優先搜尋森林以外的其他邊，如果所有邊的兩端點都不同顏色，則這也是原圖的一個二著色，並且輸出它；如果有一個邊 e 的兩端點相同顏色，則此兩端點在同一個連通部分，也就是在森林的同一棵樹上，找出在森林中，連接兩端點的路徑 P，因為 P 上的頂點的顏色是交錯出現的，因此 P 有偶數個頂點，加上 e 就形成一個奇環，並且輸出它。

事實上，在上述的演算法中，深度優先搜尋森林只是作為一個生成森林，讓我們來著色。因此，用不同的方式獲得的別的生成森林仍然可以使演算法可以運作，例如，可以用廣度優先搜尋取出廣度優先搜尋森林。

如果原圖是線段，或其他二維空間的物件，的，並且有 n 個頂點，則可以在 時間內輸出一個二著色或奇環，縱使它的邊樹可能會高達 。

奇環代表系 

奇環代表系問題是一個NP完全問題，問給一個圖 G(V,E) 和一個正整數 k，是否可以刪掉 k 個頂點使得 G 變成一個二分圖。這個問題是可定變數決定的 ()，更精確地說，存在一個演算法所花費時間不超過一個 k 的函數乘上一個 n 的多項式，其中 n 是G 的頂點數。奇環代表系這個名字是來自二分圖的一個等價特性：不存在奇環作為子圖。因此，要刪掉點使得 G 變成二分圖其實是在破壞所有的奇環，或者說找出所有奇環的代表系。在右圖的中，所有的奇環都包含一個藍色的頂點 (最下面那排的)，因此刪掉那兩個藍色頂點會把圖變成二分圖。

刪邊二分性問題則是問給定一個圖，至少要刪除幾個邊才能讓該圖變成二分圖，這和奇環代表系問題都是重要的圖修改演算法問題，而且也都是可定變數決定的。事實上，刪邊二分性問題可以在 被解決，其中 m 是原圖中的邊數。

匹配 
一个圖的匹配是这个图中一些邊所形成的集合，滿足任意集合中的两条边都没有公共的顶点。許多關於匹配的問題都有可以被多項式時間的演算法解決，例如最大匹配問題 (尋找一個匹配包含最多的邊)，，和穩定婚姻問題。在大部分的情況，如果已知原圖是二分圖，匹配問題會變得單純很多，而且許多演算法只能處理二分圖上的情況，例如專門用來計算最大匹配的邊數的霍普克洛夫特－卡普演算法。

舉個簡單的例子，假設有一些人想要找尋工作，他們形成集合  P，此外還有一些職缺，它們形成集合 J，並不是所有人都適合所有的工作，但一個人只能做一份工作。這個案例可以被建模成一個二分圖，如果一個人可以做某項工作則將二者連邊。一個完美匹配是一個工作的指派使得所有人都有工作做而且每個職缺都有人做。霍爾婚配定理給出一個二分圖有完美匹配的刻畫。

將圖依據其結構分解成多塊，經常用於找尋圖的最大匹配。

應用 
二分圖廣泛應用於編碼理論中，尤其常應用在收到從通道傳來的訊息之後解碼過程中。常見的例子有坦納圖和因子圖。坦納圖是一個二分圖，其中一個獨立集蒐集所有的一個碼字裡可以放數碼的位置，另一個獨立集則包含一些可以放數碼的位置的組合，其中每個組合代表一個碼字所該符合的限制──那些位置的數碼加起來總和是 0，而連邊就代表了屬於。因子圖則與低密度奇偶檢查碼及渦輪碼的機率解碼中所用到的貝氏網路密切相關。

在電腦科學中，佩特里網是一個數學工具用來分析及模擬並行計算，它將系統模擬成一個有向二分圖，其中一部分的頂點被稱為「位置」節點，包含一些資源，另一部分的頂點被稱為「事件」節點，消耗或生產資源，節點和邊之間的關係還有一些限制，這些限制來自系統本身的限制。佩特里網藉由有向二分圖的性質讓系統的行為可以用數學來證明，並且讓系統的模擬容易被執行。

在射影幾何中，是一個二分圖，描述中點跟邊的關係。頂點的兩部分分別對應到構形的點跟邊，圖中兩頂點之間連邊若且唯若構形中的邊通過點，因為兩條邊頂多交於一點，或者說，兩點決定唯一一條邊，所以列維圖中不存在長度為 4 的環作為子圖，換言之，列維圖的圍長大於等於 6。

参考资料

參見
 完全二分图
 因子圖
 Tanner圖
 Petri網

图