二分图匹配入门

本文介绍了二分图匹配的基础概念,包括交替路和增广路,并通过例子阐述匈牙利算法如何寻找增广路来达到最大匹配。通过分析Berge定理,展示了如何利用算法增加匹配数。
摘要由CSDN通过智能技术生成

之前大一的时候有学姐讲过二分图匹配的匈牙利(Hungrain)算法,当时没理解。最近想补补图论,学习一下二分图匹配的匈牙利算法,其实挺简单的。

先弄清二分图匹配时重要的几个概念:

(1)交替路:从一个未匹配的顶点出发,依次经过未匹配边,匹配边...,这样由匹配边,非匹配边交替形成的路称为交替路。一定先理解这个概念,才能理解增广路的概念。

(2)增广路:从一个未匹配的顶点出发,沿交替路走,到达第一个未匹配顶点时到达终点,这个过程形成的路称为增广路。


增加匹配的关键在于在整个图中寻找增广路,如果找不到增广路,则已经找到最大匹配(Berge 定理)。否则,我们可以将增广路中所经过的边进行修改,若其原来是匹配边,则我们将其修改为未匹配边。若其原来是未匹配边,则将其变为匹配边。这样可以增加一对匹配。为什么呢?因为增广路上一定是匹配边比未匹配边少一条,可以根据定义想一想。有了这个性质,那么我们就只需要找增广路就行了。再根据Berge定理,就找到了最大匹配。看两幅图来感受一下寻找增广路增加匹配的例子:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值