网络流学习笔记
来源:互联网 发布:无线信号强度测试软件 编辑:程序博客网 时间:2024/05/23 11:48
概念:
1、点覆盖集:无向图G的一个点集,使得该图中所有边都至少有一个端点在该集合内。
2、最小点权覆盖集:在带点权无向图G中,点权之和最小的覆盖集。
3、点独立集:无向图G的一个点集,使得任两个在该集合中的点在原图中都不相邻。
4、最大点权独立集:在带权无向图G中,点权之和最大的独立集。
建图小技巧与模型:
1、最大流 = 最小割 = 最小点权覆盖集 = 点权和 – 最大点权独立集
2、点只能经过一次: 拆点,连权值为1的边
3、最小割中用正无限容量排除不参与决策的边。
4、最小割中利用与源或汇关联的边容量处理点权。
5、多源多汇问题: 建立超源超汇
6、结点容量: 拆点,连接一条权值为结点容量的边。
7、费用与流量平方成正比的最小流: 拆边法,拆成容量为1,费用为等差数列的若干条边。
在求最小割的实现上分两步,先求得最大流,再在得到最大流f 后的残留网络 f G中,从s开始深度优先遍历(DFS),所有被遍历到的点,即构成点集。
注意,虽然最小割 中的边都是满流边,但满流边不一定都是最小割中的边。在某些特殊图中,很容易犯错,误认为不用DFS,就可以直接得出割。
最大权闭合图:
1、定义:一个有向图 的闭合图是该有向图的一个点集,且该点集的所有出边都还指向该点集。即闭合图内的任意点的任意后继也一定在闭合图中。
2、在许多实际应用中,给出的有向图常常是一个有向无环图(DAG),闭合图的性质恰好反映了事件间的必要条件的关系:一个事件的发生,它所需要的所有前提也都要发生。一个常见的例子就是制定大学的选课计划,其中一些课程需要以另一些课程为基础,这就是给出了有向无环图。若给所有课程打分,最大权闭合图对应了获益最大或效率最高的选课计划,解决了这个问题,就可以容易地选出一个最合理的选课计划。
3、在另外一些实际应用中,给出的是一个一般有向图,即有可能出现圈(可以强连通缩点变成DAG)。常见的例子就是工程分期,一个工程可能含有很多项目,项目之间也有依赖关系。有些项目是需要同 期一起开发,互相依赖的(即出现圈)。这样,也可以利用最大权闭合图,将最先应该完成的项目选出来作为工程的第一期。
4、建模方式:源点S向每个正权点连一条权值为该点权值的边,每个负权点向汇点T连一条权值为该点权值绝对值的边,如果点a和点b有关系,则add(a,b,INF),结果为图中所有正权点的权值和--最大流。
持续更新。。。
- 网络流学习笔记
- 网络流学习笔记
- 网络流学习笔记
- 网络流学习笔记
- 网络流学习笔记
- 【学习笔记】 网络流问题
- 【学习笔记】 网络流问题
- 《网络流学习笔记01》
- Java学习笔记-网络流
- [总结] 网络流学习笔记
- 网络流建模学习笔记
- 【转载】网络流学习笔记
- 网络流学习笔记2
- 【网络流】网络流学习笔记Part1网络流基础
- 网络流之最大流学习笔记
- 网络流学习笔记(1)
- 网络流学习笔记(1)
- 网络流学习笔记(2)
- linux(centos)搭建SVN服务器
- jquery.cookie使用方法
- <xliff:g>标签
- 编写高效的Android代码
- 启动eclipse提示找不到虚拟机解决办法
- 网络流学习笔记
- 希尔排序
- Linux SFTP详解
- IO流知识点整理
- directory not found for option
- java 猜拳游戏代码
- Apache与Tomcat的区别 ,几种常见的web/应用服务器
- 字符串读取
- Т-prime http://codeforces.com/problemset/problem/230/B