差分約束

lwxxs發表於2024-05-21

二分圖


不存在奇數環,染色法不存在矛盾

通常將點分為兩個集合,看每一條邊是否為連向兩個集合中的點,是則為二分圖

染色法辨別二分圖

匈牙利演算法

概念


最小點覆蓋:選出最小的點集,使得每一條邊的兩個端點至少有一個被選出來

在二分圖當中,最小點覆蓋等於最大匹配數

最大獨立集:從一個圖中選出最多的點,使得選出的點之間沒有邊,內部沒有邊

最大團:選出最多的點,使得選出的點之間都有邊

兩者之間互為補集

二分圖中求最大獨立集等價於去掉最少的點破壞所有的邊

=找最小點覆蓋=找最大匹配數

即最終為n-m


最小路徑點覆蓋:針對有向無環圖,用最少的互不相交的路徑(意味著所有點不能重複),將所有點覆蓋,和最大匹配數互補

推導

拆點:

​      路徑對應匹配點,路徑終點對應一個左部的非匹配點

​     將路徑轉化為二分圖,每條邊最多隻有一個出度入度,即兩類圖中只有一條邊

​     將路徑的出點入點分為兩類,必為二分圖

<=>讓左側非匹配點最少

<=>讓左側點匹配最多

<=>找最大匹配

最大匹配數=最小點覆蓋=總點數-最大獨立集=總點數-最小路徑點覆蓋

最小路徑重複點覆蓋:兩條路徑允許 原圖的最小路徑覆蓋等於新圖的最小路徑重複點覆蓋

  1. 先求傳遞閉包
  2. 求最小路徑覆蓋

相關文章