图论知识总结
来源:互联网 发布:软件系统安全 编辑:程序博客网 时间:2024/06/01 16:45
总结一下图论的知识点几个大的分区
1:网络流
2:强连通分量,割点和桥
3:最短路
4:最小生成树
5:图论的小知识点
网络流
一:最大流问题
现在很多都是配合二分通过网络流进行判定,单独的网络流,就是以流作为方案就好。//这一部分就是通过做题,积累就好
二:费用流问题
是在满足最大流的条件下,费用最小,这里的最大流一般就是一种条件(体会,保证图中满流或保证流量最大,的情况下的费用最小,这里是表示条件)。
三:最小割
二者取其一式、最大权闭合子图
//主要的思想还是通过复习以前的题目,和多做题,强化
强连通分量
很多强连通分量,都是配合着缩点来搞,然后依据有向无环图的一些性质,通过一些其他的方法来处理(DAG上dp,DAG上记忆化,DAG性质)
割点和桥(只做过模板题)
最短路
求最少步数,也就是给出的图边长为1,这样的图中求最短路,这种的bfs就可以解决,不需要跑最短路。
差分约束系统:形如ai-aj<=k这样的约束,求最大或最小值的题,注意有的情况会需要超级源的技巧。
建模:最短路的建模做的不多,可以分为点权最短路,和普通的边权最短路,一般就是将状态构成点,有联系的状态之间连边,边权就是转移的费用,由此实现初始向目标的最短路。
技巧:首先最短路还有包括网络流中有一个很重要的技巧(70分到100分的区别),就是有些图我们加边,我们将全部的边(n^2级)加进去,但是分析性质可以发现只需要加O(n)级数量的边就可以,实际上就是排除一些不需要的边以进行优化——bzoj4152
最小生成树
性质(都可以根据克鲁斯卡尔过程证明出来)
1:最小生成树一定是一个最小瓶颈生成树(最大边最小),最小生成树上的任意两点之间的路径一定是最小瓶颈路
2:图中环上的最大边,最小生成树一定不包含它;
3:生成树中若再加一个边,就一定会构成一个环,若要再构生成树,也一定要删除环中的一个边,由此可以做次小生成树。
TA整理的经典最小生成树笔记http://blog.csdn.net/ta201314/article/details/40825539
其重要思想加边构环判定大小
应用
1:最小生成树在很多时候是,在题目当中作为初始化的辅助用,然后再套上别的算法(例:货车运输 MST+倍增),当然这一般是类似贪心的思想,证明都是根据最小生成树的性质。(货车运输——性质1),//注意货车运输求得是最大生成树,算法没有什么区别
2:考察建模:bzoj1601(超级源技巧)//习题不够
3:考察性质与猜想:bzoj1821(需要练习)
矩阵树定理(未学)
图论小知识点
找环:首先判环的话有dfs判环(tyvj模拟赛,t3)和拓扑判环,其中最小环是通过floyd来求的。//待填坑
2-SAT
拓扑排序,拓扑序dp。:总是作为一个成分参与题目的一部分,辅助进行解题。
还有在题目中遇到一些没见过的图论的题和新定义,可以尝试进行推断分析该类型图的性质,以便于解题。
总说图论:
在图论的建模当中,通用且常有的技巧有
1:分点技巧
2:超级源技巧
3:减边,优化复杂度技巧
- 图论知识总结
- 基础图论知识总结
- 图论相关算法知识总结
- 别人总结的知识图
- 图论知识总结第一弹之求割点
- 图论知识总结第二弹之求桥
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- 知识总结
- Hdu 5876 Sparse Graph(补图最短路)
- 题目1010:A + B
- Android开发环境搭建
- 手把手教你掌握Design新控件(一)
- 搭建Spark开发环境的几种方式及入门示例
- 图论知识总结
- PHPStorm更改为Apache服务端口,及修改默认的网站目录为PHPStorm的工作目录
- 就是乘法【NOIP2016提高A组模拟9.24】
- js延时提示框
- ascii gbk utf-8 编码问题
- Vim中自动加载cscope.out
- 数组去重
- [刷题]ACM/ICPC 2016北京赛站网络赛 第1题 第3题
- Java之File类