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

     本文转自大牛博客:http://www.byvoid.com/blog/hungary/

    这是一种用增广路求二分图最大匹配的算法。它由匈牙利数学家Edmonds于1965年提出,因而得名。 定义 未盖点:设Vi是图G的一个顶点,假设Vi 不与随意一条属于匹配M的边相关联,就称Vi 是一个未盖点。

    交错路:设P是图G的一条路,假设P的随意两条相邻的边一定是一条属于M而还有一条不属于M,就称P是一条交错路。

    可增广路:两个端点都是未盖点的交错路叫做可增广路。

    流程图

    l

    伪代码:

    演示:

    1

    C实现(作者BYVoid

    Pascal实现(作者魂牛

    ps:近期由于比赛,须要用到二分图,图论这东西好多要好好学的。

  • 相关阅读:
    BZOJ3585&3339mex——主席树
    BZOJ1926[Sdoi2010]粟粟的书架——二分答案+主席树
    BZOJ2662[BeiJing wc2012]冻结——分层图最短路
    BZOJ1433[ZJOI2009]假期的宿舍——二分图最大匹配
    BZOJ1087[SCOI2005]互不侵犯——状压DP
    BZOJ4808马——二分图最大独立集
    BZOJ3175[Tjoi2013]攻击装置——二分图最大独立集
    BZOJ3524[Poi2014]Couriers——主席树
    BZOJ4010[HNOI2015]菜肴制作——拓扑排序+堆
    BZOJ2588Count on a tree——LCA+主席树
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4007320.html
Copyright © 2011-2022 走看看