zoukankan      html  css  js  c++  java
  • 匈牙利算法

    首先,匈牙利算法是用来求二分图的最大匹配的,它的核心问题就是找增广路径。匈牙利算法的时间复杂度为O(VE),其中

    V为二分图左边的顶点数,E为二分图中边的数目。


    现在我们来看看增广路径有哪些性质:

    (1)有奇数条边。

    (2)起点在二分图的左半边,终点在右半边。(存疑?)

    (3)路径上的点一定是一个在左半边,一个在右半边,交替出现。

    (4)整条路径上没有重复的点。

    (5)起点和终点都是目前还没有配对的点,而其它所有点都是已经配好对的。

    (6)路径上的所有第奇数条边都不在原匹配中,所有第偶数条边都出现在原匹配中。

    (7)最后,也是最重要的一条,把增广路径上的所有第奇数条边加入到原匹配中去,并把增广路径中的所有第偶数条边从原

    匹配中删除(这个操作称为增广路径的取反),则新的匹配数就比原匹配数增加了1个。

    摘自:http://blog.csdn.net/acdreamers/article/details/8621130

    匈牙利算法详解 byvoid博客

    https://www.byvoid.com/blog/hungary/

  • 相关阅读:
    three.js
    three.js
    three.js
    反射API提供的常用类和函数
    PHP控制反转(IOC)和依赖注入(DI)
    优化思路以及优化过程
    nginx的缓存设置提高性能
    网页内容的压缩编码与传输速度优化
    nginx日志按日期自动切割脚本
    mysql数据备份
  • 原文地址:https://www.cnblogs.com/cumulonimbus/p/5515598.html
Copyright © 2011-2022 走看看