• 网络流——最大权闭合子图


    网络流——最大权闭合子图

    定义

    • 闭合子图:有向图的闭合子图是指有向图中的一个子图(V),对于(forall <u,v>),若(uin V),则(vin V)
    • 最大权闭合子图:点权和最大的闭合子图。

    算法

    最大权闭合子图的求解一般使用网络流来求解。

    先给出算法,

    对于所有正权点从S向这个点连一条边,边权为点权

    对于所有负权点从这个点向T连一条边,边权为点权的相反数。

    对于原图中的边,边权设为inf。

    用所有正边权的和减去最小割就可以了。

    正确性显然

    考虑为什么是最优的

    最小割=(不选的正权之和+|要选的负权|)
    最大权闭合子图=(正权之和-不选的正权之和-要选的负权绝对值之和)=正权值和-最小割

    所以最小化最小割就可以了

  • 相关阅读:
    数据结构实验2-迷宫
    离散实验4
    关系代数中的除法运算
    数据库中什么叫象集
    (转)汇编-补码
    2014022201
    20140222
    2014022101
    代码20140221
    代码20140215
  • 原文地址:https://www.cnblogs.com/LLCSBlog/p/12616576.html
Copyright © 2020-2023  润新知