在有向无环图中,有如下的一些定义和性质:

链:一条链是一些点的集合,链上任意两个点x, y,满足要么 x 能到达 y ,要么 y 能到达 x 。

反链:一条反链是一些点的集合,链上任意两个点x, y,满足 x 不能到达 y,且 y 也不能到达 x。

又有诸如以下定理:

一、有向无环图最小不相交路径覆盖 
定义:用最少的不相交路径覆盖所有顶点。 
定理:把原图中的每个点V拆成Vx和Vy,如果有一条有向边A->B,那么就加边Ax-By。这样就得到了一个二分图,最小路径覆盖=原图的节点数-新图最大匹配。 
简单证明:一开始每个点都独立的为一条路径,总共有n条不相交路径。我们每次在二分图里加一条边就相当于把两条路径合成了一条路径,因为路径之间不能有公共点,所以加的边之间也不能有公共点,这就是匹配的定义。所以有:最小路径覆盖=原图的节点数-新图最大匹配。

二、有向无环图最小可相交路径覆盖 
定义:用最小的可相交路径覆盖所有顶点。 
算法:先用floyd求出原图的传递闭包,即如果a到b有路,那么就加边a->b。然后就转化成了最小不相交路径覆盖问题。

三、偏序集的最大反链 
定义:偏序集中的最大独立集。 
Dilworth定理:对于任意偏序集都有,最大独立集(最大反链)=最小链的划分(最小可相交路径覆盖). 
通过Dilworth定理, 我们就可以把偏序集的最大独立集问题转化为最小可相交路径覆盖问题了。

经典例题

偏序集的最大反链【二分图】相关推荐

  1. 二分图常用建图方法及其性质

    建图方法 https://wenku.baidu.com/view/63c1a01655270722192ef7c3.html 性质 http://dsqiu.iteye.com/blog/16895 ...

  2. BZOJ1143[CTSC2008]祭祀river 偏序集及Dilworth定理

    这里讲一下我对偏序集的认识   如果有偏差可以评论我  我会修改 一:定义 (度娘上copy来的  不想看的可以跳过 设R是非空集合A上的一个二元关系,若R满足: 自反性.反对称性.传递性,则称R为A ...

  3. 最小链覆盖——Dilworth定理

    Dilworth定理 Dilworth定理,一言以蔽之,偏序集能划分成的最少的全序集个数等于最大反链的元素个数.------litble 狄尔沃斯定理(Dilworth's theorem)亦称偏序集 ...

  4. 如何给mysql表添加百万条数据_给mysql一百万条数据的表添加索引

    直接alter table add index 添加索引,执行一个小时没反应,并且会导致锁表:故放弃该办法,最终解决办法如下: 一.打开mysql 命令行客户端 这里我们那可以看到导出的数据文件所存放 ...

  5. P1020 [NOIP1999 普及组] 导弹拦截(100+200+详细证明)

    那么题意: 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导 ...

  6. 【集合论】序关系 : 总结 ( 偏序关系 | 偏序集 | 可比 | 严格小于 | 覆盖 | 哈斯图 | 全序关系 | 拟序关系 | 偏序关系八种特殊元素 | 链 | 反链 ) ★★

    文章目录 一.偏序关系 二.偏序集 三.可比 四.严格小于 五.覆盖 六.哈斯图 七.全序关系 ( 线序关系 ) 八.拟序关系 九.拟序关系相关定理 十.偏序关系八种特殊元素 十一.链 十二.反链 十 ...

  7. [bzoj1143][CTSC2008]祭祀river——DAG上最长反链,Dilworth定理,最大二分图匹配,Floyd

    题目大意: 给定一个DAG图,求最长反链(即一个点集,其中任意点两两不可以相互到达). 思路: 一开始我其实是想用求最大独立集的方法去求的.但是并不会(好像也过不去). 题目所要求的是最长反链,需要用 ...

  8. 偏序集的Dilworth定理学习 (转载)

    转自http://3214668848.blog.163.com/blog/static/48764919200991885836429/ 导弹拦截是一个经典问题:求一个序列的最长不上升子序列,以及求 ...

  9. poj1548-Robots Dilworth定理(偏序集定理2)

    储备知识:Dilworth定理 偏序集的两个定理: 定理1) 令(X,≤)是一个有限偏序集,并令r是其最大链的大小.则X可以被划分成r个但不能再少的反链. 其对偶定理称为Dilworth定理: 定理2 ...

最新文章

  1. python调用什么函数实现对文件内容的读取_如何使用python语言中的方法对文件进行读写操作...
  2. [HAOI2007] 理想的正方形
  3. CodeForces - 1543D1 RPD and Rap Sheet (Easy Version)(异或+交互)
  4. 排序算法-02直接插入(python实现)
  5. Qt OpenGL环境配置的问题
  6. 字典:散列表、散列字典、关键字列表、集合与结构体
  7. 湖南打工妹逆袭成为身价5亿“网络第一红娘”
  8. vue click事件_Vue.js---实现前后端分离架构中前端页面搭建(二)
  9. mysql with as 用法_英语语法丨英语中just的用法总结,你掌握了吗?
  10. linux 终端显示白底,mac终端使用Item2无法显示颜色的解决方法
  11. c++ 编译添加dll_Windows下osg编译
  12. MySQL 的 Web 界面、前端或 GUI 工具
  13. gdal库的三个使用心得
  14. project 2013使用记录
  15. Linux 100个常用指令
  16. stm32 USART rs485 rs232
  17. (day 39 - 动态规划) 剑指 Offer 47. 礼物的最大价值
  18. python数字图像处理(13):基本形态学滤波
  19. 学校计算机房要求,学校机房建设包含哪些内容以及相关的标准(参考)一
  20. 【工具推荐】免费的思维导图软件——Blumind

热门文章

  1. objective c 函数声明
  2. 周鸿袆: 教您打造十页完美商业计划书
  3. python如何安装pip3_Python3中安装pip3
  4. 远程服务器返回错误码: (507) Insufficient Storage
  5. ios SnapKit 约束Unable to simultaneously satisfy constraints 和UIView-Encapsulated-Layout-Height的警告
  6. 计算机专业本科上线分数,计算机专业对口大学分数线本科
  7. IDEA中如何进行GIT分支合并(转)
  8. 计算机网络基础知识--TCP/IP协议、IP分组、TCP传输
  9. 点到点的距离、点到直线的距离、点是否在直线上
  10. 老表:Java8尽管很香,你想过升级到Java11吗?会踩那些坑?下