图匹配算法

 

一、二分图匹配

图匹配里面最特殊的一种就是二分图匹配,当然,也是算法最简单的一种。

所谓二分图,用最通俗的说法,就是图的顶点恰好可以分成两个集合,同一个集合内的顶点间不允许有边,处在不同集合的顶点允许有边相连。

而二分图匹配,指的是,从整个二分图中选出若干条边,图中的任意一个顶点(对于一个顶点,可能有许多条以该顶点为端点的边,每一条边都为该顶点的连边)至多有一条连边被选取。而边的选取过程,实质上是给顶点进行配对(选取一条边,边的两个端点即完成了配对),因此我们称这个过程为二分图匹配

说到这里,我们肯定会有一个疑问,如何配对才能得到更多的边?我们称这个求边数最大的问题为最大二分图匹配问题。

1、匈牙利算法

对于最大二分图匹配问题,最基础,代码量最小的算法是匈牙利算法。

在学习匈牙利算法之前,我们先来思考一下一种情况:假如一个二分图当前已经进行了匹配(不是最大匹配),在该二分图中,仍然存在两个未进行匹配但是存在连通路径(路径可以由一条或多条边组成)的点,且在该连通路径上

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值