資源簡介
數學建模中能用到的超經典匈牙利算法,用matlab編程,給大家分享分享
代碼片段和文件信息
//匈牙利算法實現?
int?Bipartite(bool?vc?[][MAX]int?nv1int?nv2)?{?
????//vc[][]為二分圖,nv1nv2分別為左邊的點數?
????int?i?j?x?n;?
????//n為最大匹配數?
????int?q[MAX]?prev[MAX]?qs?qe;?
????//q是BFS用的隊列,prev是用來記錄交錯鏈的,同時也用來記錄右邊的點是否被找過
????int?vm1[MAX]?vm2[MAX];?
????//vm1vm2分別表示兩邊的點與另一邊的哪個點相匹配?
????n?=?0;?
????for(?i?=?0;?i?????for(?i?=?0;?i?????for(?i?=?0;?i?????????if(vm1[i]?!=?-1)continue;
????????//對于左邊每一個未被匹配的點進行一次BFS找交錯鏈?
????????
????????for(?j?=?0;?j?????????//每次BFS時初始化右邊的點
?????????
????????qs?=?qe?=?0;?//初始化BFS的隊列?
????????//下面這部分代碼從初始的那個點開始,先把它能找的的右邊的點放入隊列
????????//★稍微改一下可以適用于用鄰接表實現的二分圖?
????????for(?j?=?0;?j?????????????prev[j]?=?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1992??2007-07-25?17:46??erfenpipei\bipartite.cpp
?????文件?????174592??2007-08-28?21:56??erfenpipei\二分匹配.ppt
?????目錄??????????0??2007-08-28?21:56??erfenpipei
?????文件????????218??2007-06-04?14:14??www.pudn.com.txt
-----------?---------??----------?-----??----
???????????????176802????????????????????4
評論
共有 條評論