最大基数匹配.pptxVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
最大基数匹配.pptx

最大基数匹配给定一个图G=(V,E),设M是E的一个子集,如果M不含环且其中任意两边均不是邻接的,则称M是G的一个匹配.如果某顶点和M的一条边关联,则称其为M-饱和点,否则称为M-非饱和点. 如果G的每一点都是M-饱和点,则称M是G的完美匹配.若M是G的边数最多的匹配,则称M是G的最大基数匹配. 完美匹配是最大基数匹配.实例1. 设有m个工人和n项工作,规定每个工人至多做一项工作,且每项工作至多分配给一个人去做. 已知每个工人只能胜任其中一项或某几项工作,问应该怎样分配才能尽可能多的把工作分给适当的工人去做?2. 有n个相互独立的工件要分给2台完全相同的机器加工,每个工件只需在任一机器上不中断加工一次,且假设每个工件加工时间皆为1. 但在加工工件时需要用给定的s种不同资源,这些资源在任意时刻的总量皆为常数. 问如何安排工件使时间跨度尽可能小?设M是G的一个匹配,G的一条M-交错路是指其边在M和E\M中交错出现的路.G的一条M-增广路是指起点和终点都是M-非饱和点的一条M-交错路.定理1:图G中一个匹配M是最大基数匹配当且仅当G不包含M-增广路.最大基数匹配问题的算法思想:找到任意一个匹配,然后在图中寻找它的增广路,直到找不到为止.最大基数匹配问题是多项式时间可解的,这里仅讨论二分图的最大基数匹配问题.对于图G的任意一个顶点的子集X,定义X的邻域N(X)为与X中的点相邻接的所有点的全体.定理2:设G为二分图,顶点集分划为S,T,则G有饱和S的每个顶点的匹配当且仅当对一切 ,有.定理3:设M是图G的匹配,C为G的覆盖,若|M|=|C|,则M是G的最大基数匹配,C是G的最小覆盖.定理4:在二分图中,最大基数匹配的边数等于最小覆盖的顶点数.二分图最大基数匹配的算法用最大流问题算法求解: 1 1 12. 匈牙利算法:算法思想:任给匹配M出发(一开始可以是空集),若M饱和S的所有点,则M已经是最大基数匹配. 否则由S的M-非饱和点出发,用标号法寻找M-增广路直到找不M-增广路为止.寻找增广路的标号法是由匈牙利人Egervary最早提出,因此称为匈牙利算法.1.在二分图中任取一个匹配M,所有顶点都没有标号.2. 2.1 若S中无M-非饱和点,则M为最大基数匹配,结束,否则对S中每个M-非饱和点标“0”和未检查,转2.2. 2.2 如果S中所有标号的顶点都已检查,转4;否则取S中已标号未检查的顶点 . 2.3 若所有与 相邻的顶点都已标号,则把 改为已检查,转2.2;否则转2.4. 2.4 把所有与 相邻的未标号顶点 都给予标号“i”.若其中某个 是M-非饱和点,转3;否则对所有 ,把与 在M中配对的顶点 给予标号“j”和未检查,并把 改为已检查,转2.2.3.从得到标号T中的M-非饱和点 开始反向搜索,一直找到S中标号为“0”的M-非饱和点 为止,得到G中M-增广路P,置 ,去掉M中所有顶点标号,转2.4.M是G的最大基数匹配,结束.求下图所示二分图的最大基数匹配.

文档评论(0)

jackzjh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档