1. 程式人生 > >Hall定理(二分圖匹配問題,Hungary演算法基礎)

Hall定理(二分圖匹配問題,Hungary演算法基礎)

前言

hall定理是判定二分圖是否存在完全匹配的定理。

完全匹配:是指最大匹配數為min(|X|,|Y|) 也就是X或Y集合其中一個集合所有點都被匹配了。

定理內容

設二分圖中G=<V1,V2,E>中 |V1|=m<=|V2|=n,G中存在從V1到V2的完全匹配當且僅當V1中任意k(k=1,2,...,m)個頂點至少與V2中k個頂點是相鄰的。

證明

必要性

因為是完全匹配,所以V1中任意k個點都是匹配的,顯然至少與V2中k個點是相鄰的。

充分性

反證法。設G中不存在完全匹配,取G的一個最大匹配M,則V1中至少有一個點不在M上,且該點必至少與一條不在M中的邊相連,該邊的另一個頂點若也為M-非飽和點,則與M為最大匹配矛盾,若另一個頂點為M-飽和點,則考察在M中與該頂點相鄰的點,利用飽和點去考察在M中相鄰的飽和點(交錯地考察,即交錯地通過M中的邊和非M中的邊),直至考察完畢,由相異性條件知,最後必考察至非飽和點,此時出現一條增廣路

,又與假設矛盾(M不是最大匹配),故充分性成立。

Hall定理的一個推論

設二分圖中G=<V1,V2,E>中|V1|=m<=|V2|=n,V1中每個頂點至少關聯正整數t條邊,V2中每個頂點至多關聯t條邊(t條件),則G存在從V1到V2的完全匹配。

證明:因V1中任意k個頂點至少關聯kt條邊(kt條邊至少關聯V2中的k條邊),故V1中任意k(k=1,2,...,m)個頂點至少與V2中k個頂點相鄰,即得到相異性條件,得證。