最小鏈覆蓋


最小鏈覆蓋

從有向無環圖(DAG)中選出若干點不相交的鏈,使得這些鏈覆蓋所有的點,並且鏈的條數最小。鏈的定義是一條連續路徑,並且不經過重復的點。

設沒有用到的邊是黑色邊,用到的邊是彩色邊。那么一條彩色邊對應一個連出去的點。由於鏈的個數是沒有連出去的點的數量,因此我們只需要最大化彩色邊個數a。答案即是n-a。

建立兩個n個點的點集X和Y,如果原圖中存在一條邊A->B,就在X中的A向Y中的B連邊,跑最大匹配就能找到最大彩色邊個數。這是對的,是因為X中對應的是只有一條邊連出去,而Y對應的是只有一條邊連過來。因此一個點最多連進去一次,連出去一次。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM