最大匹配與二分圖建圖概述

來源:互聯網
上載者:User

一:關於二分圖最大匹配的兩個定理:


1:最大匹配數 + 最大獨立集 = n + m(n,m為二部圖兩部分的個數)
2:二分圖的最小覆蓋數 = 最大匹配數

3:最小路徑覆蓋 = 最大獨立集


最大獨立集是指求一個二分圖中最大的一個點集,該點集內的點互不相連。


最小頂點覆蓋是指 在二分圖中,用最少的點,讓所有的邊至少和一個點有關聯。


最小路徑覆蓋是指一個不含圈的有向圖G中,G的一個路徑覆蓋是一個其結點不相交的路徑集合P,圖中的每一個結點僅包含於P中的某一條路徑。路徑可以從任意結點開始和結束,且長度也為任意值,包括0


關於二分圖最大匹配演算法:http://blog.csdn.net/no_retreats/article/details/7854091


常見的建圖模型:(以下是參照其他資源小結的)

模型一:行列匹配法

    

1 0 1
0 1 0
1 0 0

      如所述是一個3*3的矩陣,其中1表示有敵人,0表示沒有敵人。我們現在有多支箭,而且每支箭能夠殺死一行或者一列的敵人,問題是我們要殺死所有的敵人至少需要多少支箭?

      初初看來和二分圖是沒有什麼聯絡,不過我們可以試試換個角度去思考問題,我們想要殺死敵人是不是只要有箭經過他就行了是吧,也就是說所有的敵人被箭覆蓋過就行了。嗯,沒錯,就是覆蓋,最小頂點覆蓋。既然我們要殺的是敵人,那麼我們的點就應該是敵人的位置,只要有箭經過敵人的位置,那敵人就被我們殺死了有木有。所以我們要依據點來建圖,將點的橫座標看成是二分圖的X部分,縱座標看成是二分圖的Y部分。由可知敵人的位置在((1,1),(1,3),(2,2),(3,1)),因此我們就用座標的橫縱座標來見二分圖了,其中用邊相連的邊即為敵人所在的點了。

   ,一個二分圖的最小頂點覆蓋就是要找到最少的邊把所有的頂點覆蓋,正好符合這個題的要求,上面還給出了一個性質,即二分圖的最小頂點覆蓋是等於二分圖的最大匹配。所以我們只需要對上面的那個二分圖就最大匹配就行,這樣把原本的問題轉變的很簡單了


模型二:黑白染色法

1 0 1
1 1 1
0 0 1

如還是一個3*3的矩陣,現在的問題就是讓你把圖中的1變為0,而且一次最多隻能修改相鄰的兩個,問至少需要多少次的修改才能把所有的1修改為0?似乎用貪心,DP都派不上用場,當然在這裡提出是要用二分圖最大匹配來求解了,這裡的關鍵是如何建圖?既然是每次只能拿相鄰的兩個,是兩個,正好我們匹配的時候也是找兩個進行匹配,這就是這個問題和最大二分圖匹配問題相聯絡的地方。但是每個點能和他四周的四個點匹配,那麼我們怎麼把所有的點分成來那個部分呢? 一個解決辦法就是要把第i個點放到第一部分,第i個點周圍的四個點放到第二部分,再把這四個點周圍的16點放到第1部分
有了這樣的思想,我們只需對原圖做這樣的改動:黑白染色使四周和中間的顏色不同。

                                                           

 

圖中黑白的意思是就是把點分類,圖裡的1,2,3,4,5,6表示的就是上面那個0,1圖的1的個數
然後建圖,把相鄰的點相連,比如說1和2 2和3 。。。。。。。

                                                           

  

 然後要把所有一改為零,也就是要對每個點都操作,每個點都要有,那不就是最小頂點覆蓋嗎?嗯,是的,還是最小頂點覆蓋。

 



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.