差分约束

news/2025/6/15 7:37:06/文章来源:https://www.cnblogs.com/lwxxs/p/18204894

二分图


不存在奇数环,染色法不存在矛盾

通常将点分为两个集合,看每一条边是否为连向两个集合中的点,是则为二分图

染色法辨别二分图

匈牙利算法

概念


最小点覆盖:选出最小的点集,使得每一条边的两个端点至少有一个被选出来

在二分图当中,最小点覆盖等于最大匹配数

最大独立集:从一个图中选出最多的点,使得选出的点之间没有边,内部没有边

最大团:选出最多的点,使得选出的点之间都有边

两者之间互为补集

二分图中求最大独立集等价于去掉最少的点破坏所有的边

=找最小点覆盖=找最大匹配数

即最终为n-m


最小路径点覆盖:针对有向无环图,用最少的互不相交的路径(意味着所有点不能重复),将所有点覆盖,和最大匹配数互补

推导

拆点:​      路径对应匹配点,路径终点对应一个左部的非匹配点​     将路径转化为二分图,每条边最多只有一个出度入度,即两类图中只有一条边​     将路径的出点入点分为两类,必为二分图<=>让左侧非匹配点最少<=>让左侧点匹配最多<=>找最大匹配

最大匹配数=最小点覆盖=总点数-最大独立集=总点数-最小路径点覆盖

最小路径重复点覆盖:两条路径允许 原图的最小路径覆盖等于新图的最小路径重复点覆盖

  1. 先求传递闭包
  2. 求最小路径覆盖

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/710225.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

window版postgresql安装orafce插件

在Visual Studio中创建一个新的C工程:将解压目录下的除.sql和文件夹之外的文件都copy到新创建的工程中,另外要将sqlscan.c排除在项目之外 配置编译选项配置预处理器,预处理器定义中的内容为: WIN32 _WINDOWS _DEBUG _CRT_SECURE_NO_WARNINGS 注意要有_CRT_SECURE_NO_WARNI…

简单叙述MySQL如何优化?

数据库设计优化:尽量减小占用磁盘空间:使用较小的数据类型,如mediumint替代int。 定义字段为not null,除非需要允许空值。 对于不变的字段,如固定长度的字符串,采用char而不是varchar。优化索引设计:主索引应尽可能短,以提高效率。 仅创建必要的索引,避免不必要的索引…

架构1

一 软件架构风格 定义: 软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式。架构风格定义一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。架构风格大类架构小类…

CERC 2017 E. Embedding Enumeration 官方题解翻译

CERC 2017 E. Embedding Enumeration 官方题解翻译 观察:当我们以节点 \(1\) 为根节点来构造树时,它必须是一棵二叉树。否则,我们会有一个度数 \(>3\) 的节点,这无法被嵌入(到二叉树的结构中)。 让我们构建一个动态规划解决方案来枚举所有嵌入方式。我们可以将状态描述…

JDK版本 - Major Version

Java Major Version22 6621 6520 6519 6318 6217 6116 6015 5914 5813 5712 5611 5510 549 538 527 51

为什么 mov sp, 32,debug程序,执行sp=32的位置,后面的代码就全乱了(在小甲鱼零基础汇编第6章,包含多段程序,的视频代码)

assume cs:code, ds:data, ss:stackdata segmentdw 0123h, 0456h, 0789h, 0abch, 0defh, 0fedh, 0cbah, 0987h; 用来作存放数据 data endsstack segmentdw 0, 0, 0, 0, 0, 0, 0, 0; 用来作栈的空间 stack ends code segmentstart:; 设置数据段mov ax, datamov ds, ax ; 设…

迭代器、生成器

迭代器 【一】迭代器介绍迭代器就是用来迭代取值的工具,是重复反馈过程的程序 目的是为了更加逼近我们想要的目标和结果 每一次迭代得到的返回结果就是下一次迭代开始的初始值num_list = [1,2,3,4,5,6] count = 0 while count <len(num_list):# 每一次使用的索引位置就是上…

闲话目录

诈骗(大概莫名想写闲话了。 不知道会是多久一更,先摆着。 等到它真的是目录了就把这些话改成简介。—————————————————————————————————————————————————————————————————————————————————…