---------------------以上转自ByVoid神牛博客,并有所省略。


  [二分图带权匹配与最佳匹配] 什么是二分图的带权匹配?二分图的带权匹配就是求出一个匹配集合,使得集合中边的权值之和最大或最小。而二分图的最佳匹配则一定为完备匹配,在此基础上,才要求匹配的边权值之和最大或最小。二分图的带权匹配与最佳匹配不等价,也不互相包含。 我们可以使用KM算法实现求二分图的最佳匹配。可以参考tianyi的讲解。KM算法可以实现为O(N^3)。 [KM算法的几种转化] KM算法是求最大权完备匹配,如果要求最小权完备匹配怎么办?方法很简单,只需将所有的边权值取其相反数,求最大权完备匹配,匹配的值再取相反数即可。 KM算法的运行要求是必须存在一个完备匹配,如果求一个最大权匹配(不一定完备)该如何办?依然很简单,把不存在的边权值赋为0。 KM算法求得的最大权匹配是边权值和最大,如果我想要边权之积最大,又怎样转化?还是不难办到,每条边权取自然对数,然后求最大和权匹配,求得的结果a再算出e^a就是最大积匹配。至于精度问题则没有更好的办法了。

转载于:https://www.cnblogs.com/AbandonZHANG/p/4114084.html

二分图带权匹配、最佳匹配与KM算法相关推荐

  1. 多目标跟踪算法中之图匹配——匈牙利算法和KM算法详解

    目录 一.匈牙利算法 1.算法背景及思想 2.最大匹配 3.最优匹配/完美匹配 4.增广路径 5.代码实现 6.匈牙利算法总结 6.1.深度优先 6.2. 广度优先 二.KM算法思想及局限性 代码示例 ...

  2. 二分图带权最大匹配费用流_一文掌握阻抗匹配

    全文约8500字,阅读需要20分钟,记得收藏,分享或者点击 在看哦 我们在上周的文章中,着重介绍了阻抗匹配的相关概念和方法.阻抗匹配,作为射频设计中最为重要的一个环节,每一个射频工程师都无法绕过去的. ...

  3. java 二分图带权匹配_算法笔记_139:二分图的最大权匹配(Java)

    packagecom.liuzhen.practice;importjava.util.Scanner;public classMain {public static int MAX = 100;pu ...

  4. 二分图带权最大匹配费用流_你真的会写二分检索吗?

    作者:liubird来源:http://blog.chinaunix.net/uid-1844931-id-3337784.html 前几天在论坛上看到有统计说有80%的程序员不能够写对简单的二分法. ...

  5. 二分图带权最大匹配费用流_简单理解二分图与匈牙利算法

    最近在看DETR等论文时时,看到了使用了二分图的最大匹配,对于没有计算机基础的我表示直接上来???,因此本篇博客主要介绍什么是二分图,以及二分图的匹配的匈牙利算法. 首先我们来看看二分图的定义: 二分 ...

  6. HDU1569 方格取数(2)(二分图带权最大独立集 - 最小割应用)

    题目链接 结论 ∣带权最大独立集∣=∣点权之和∣−∣最小割∣=∣点权之和∣−∣最大流∣|带权最大独立集| = |点权之和| - |最小割| = |点权之和| - |最大流|∣带权最大独立集∣=∣点权之 ...

  7. [BZOJ2162]男生女生(二分图带权独立集+dp)

    题意:懒得写了,比较麻烦. 强行嵌套的题真没意思.. 开始我看见数据范围n=50,第一问求什么完全子图,我以为是个搜索减枝,然后第二问那个dp我想了想,列了几个方程发现不是很对,然后又没有部分分,我就 ...

  8. NOI数据结构:KM算法

    NOI数据结构:二分图的最佳匹配KM算法 二分图匹配之最佳匹配--KM算法 - ~Lanly~ - 博客园 二分图最佳完美匹配-KM算法_ZigZagK的博客-CSDN博客_完美匹配2 二分图的最佳完 ...

  9. 二分图大讲堂——彻底搞定最大匹配数(最小覆盖数)、最大独立数、最小路径覆盖、带权最优匹配

    二分图匹配 二分图大讲堂--彻底搞定最大匹配数(最小覆盖数).最大独立数.最小路径覆盖.带权最优匹配(转) 文本内容框架: §1图论点.边集和二分图的相关概念和性质 §2二分图最大匹配求解 匈牙利算法 ...

最新文章

  1. JSP第二次作业_1小题
  2. java代码写jsp读取,Java IO学习基础之读写文本文件-JSP教程,Java技巧及代码
  3. LeetCode Random Pick Index(蓄水池抽样算法)
  4. mysql 事务处理
  5. abap 给用户分配事物代码权限_【第五篇】SAP ABAP7.50 之用户接口
  6. Java NIO学习系列一:Buffer
  7. 【学习笔记】【C语言】返回指针的函数
  8. linux的NetworkManager服务(转)
  9. 在Python中处理大型文件的最快方法
  10. Spring整合Struts2,Hibernate的xml方式
  11. Mac自带的实用功能
  12. 如何评价兰州交通大学的软件工程专业?
  13. Scratch-贪吃蛇小游戏
  14. access汇总_Access数据库使用,你都知道吗?
  15. 数据格式化 string.format()
  16. 2285列车时刻表_K2285火车时刻表里程表价格表
  17. 计算机应用技术的论文如何写,计算机应用技术专业论文大纲模板范本 计算机应用技术专业论文大纲怎么写...
  18. 基于springboot的在线心理测评系统
  19. mysql 批量更新数据 备份_mysql 批量更新与批量更新多条记录的不同值实现方法...
  20. 编程实现AdaBoost算法

热门文章

  1. CentOS下系统时间同步和时区的修改和设置(用的这个)
  2. Delphi中DLL或Package窗体载入与显示
  3. 在wine里安装了IE6
  4. 学习笔记(番外篇)——python批量转换图片格式
  5. ES6—类的实现原理
  6. POJ 3624 Charm Bracelet
  7. TortoiseSVN Launch Failed Error:系统找不到指定路径
  8. android 弹出对话框时显示键盘
  9. android fragment onHiddenChanged的使用
  10. VNC怎么和宿主机共享粘贴板(整理)