图的存储
拓扑排序
欧拉路
- 这些什么路径的定义确实挺难和名字对上号。。。但是正规题目应该都会给解释吧。
- 欧拉路:从图中某个点出发,遍历整个图,图中每条边通过且只通过一次。
- 欧拉回路:起点和终点相同的欧拉路。
- 数据范围太大 DFS 会爆栈,需要用栈模拟递归。
无向图的连通性 & 有向图的连通性
- 割点割边还有连通分量什么的求法可以现推。
- Kosaraju 算法:可以 找到每个 SCC。对于一个有向图 ,建反图 ,从 上每个没有被 DFS 到的点开始 DFS,按回溯顺序从小到大编号,然后在 上按编号从大到小开始 DFS,每次 DFS 即找到一个 SCC。
基环树
- 看到每个点连一条边的题想到基环树(森林)
- 找无向图基环树的环可以用类似拓扑排序的 BFS,每次找度数为 的。
2-SAT
最短路径
- 传递闭包可以用于解决 DAG 最小可重链覆盖。
- SPFA 优化:
- SLF:使用双端队列,入队时与队头比较,比队头大插队尾,否则插队头。
- LLL:计算所有点距离平均值 ,队头出队时与 比较,比 大就去队尾,否则出队。
- 最优比率环:最大化 ,用 分数规划(最大化 ,估计一个值 ,使 ,移项得 ,二分找到最大的 就是答案)解决。
最小生成树
最大流
二分图
- Hall 定理:对于一个二部图 , 存在一个匹配的充分必要条件为对于 的任意子集 , 的邻居个数 必须大于等于 的大小 。
最小割
- 最大流 = 最小割。
- 一个常用最小割建图技巧见 P3227。
费用流
- 一种方法是把 Dinic 的 BFS 换成 SPFA。
posted @
2024-01-12 10:58
牛肉爱吃dks
阅读(
21)
评论()
编辑
收藏
举报
点击右上角即可分享
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】