图论板块(鸽了)

如果说金钱是商品的价值尺度,那么时间就是效率的价值尺度。因此对于一个办事缺乏效率者,必将为此付出高昂代价。——培根

最短路

Dijkstra

Johnson全源最短路(如何用Dijkstra跑带负权的图)

  • 通常带负环、负权边的最短路问题都是用 S p f a Spfa Spfa F l o y d Floyd Floyd 求解,但两者的时间显然过大。普通 D i j k s t r a Dijkstra Dijkstra 基于贪心思想,要求图中边都是正权
  • J o h n s o n 全源最短路 Johnson全源最短路 Johnson全源最短路 可以在预处理后在 O ( m l o g m ) O(mlogm) O(mlogm) 的时间内用 D i j k s t r a Dijkstra Dijkstra 跑带负权边的图

洛谷:P1875 佳佳的魔法药水(有向有环图 + Dijkstra变式)

  • 虽然堆优化 Dijkstra 很好用,但也不要忽视了 朴素版 Dijkstra 的本质。

牛客:最短路(最短路、二进制优化)

  • 结合二进制的最短路

Floyd

Floyd 是结合了图论的 dp

Acwing:344. 观光之旅(Floyd求最小环 + 环路径记录)

2021辽宁省大学生程序设计竞赛 B. 阿强的路(多条件状态转移 + Floyd变式)

洛谷:P1730 最小密度路径(多条件状态维护 + Floyd变式 + 枚举维护最优子结构)

洛谷:P1476 休息中的小呆(Floyd求最短路 + 升序记录路径)

洛谷:P1613 跑路(倍增 + Floyd维护最短路)

P1119 灾后重建(基础Floyd原理的理解和运用)

P1522 [USACO2.4]牛的旅行 Cow Tours(Floyd多源最短路)

Spfa 求负环 / 01分数规划 / 差分约束

除了求负环外,偏向数论的较难的一节

图论:负环 / 01分数规划 / 差分约束 知识整理(附题)

二分答案

  • 某些特定限制下求最短路问题,通过观察可以发现限制对于答案具有二分性质,以此来节省时间。
  • 当然数据大的时候用二分的时候也可以直接枚举

P1948 [USACO08JAN]Telephone Lines S(电话线路)

  • 经典二分答案题,通过将限制映射到边权上,把边权指定为 0 或 1 来二分

P1462 通往奥格瑞玛的道路(图论二分答案)

分层图

分层图是一种类似 dp 的思想,但又很特殊,是将图进行层次拆分后再处理相应问题,层与层之间不会相互影响,因此保证了独立性。这类问题数据范围通常都不大。

牛客:小雨坐地铁

  • 分层图入门 + Djikstra

洛谷:P1266 速度限制

  • 图上dp,单层信息不足以存储,那就得分多层。

洛谷:P4568 [JLOI2011]飞行路线

正反图应用

在最短路问题中,建正反图的处理通常有奇效。

洛谷:P5304 [GXOI/GZOI2019]旅行者(二进制暴力枚举 / 建反图染色法)

  • 此题可以证明正反图处理的正确性,也有二进制枚举的暴力解法。

洛谷:P2685 [TJOI2012]桥(正反图、区间维护)

  • 正反图跑出两个最短路树结构,在交织中观察出区间维护性质,用线段树处理,难度较高。

路径记录

在维护最短路的过程中,最短路上点的信息也是可以存储下来的。

洛谷:P2832 行路难(堆优化Dijkstra(错解)bfs(正解) + 记录路径)

  • 此题的独特性质导致记录路径需要用 bfs (通常是维护 父节点 数组)

DP

最短路结合 dp 也是很常见的应用。

洛谷:P1772 [ZJOI2006]物流运输(最短路 + dp)

  • 最短路 + dp,数据很小

洛谷:P3953 [NOIP2017 提高组] 逛公园(图上dp、记忆化搜索)

  • 省选dp,记忆化搜索和判环的含金量

洛谷:P3556 [POI2013]MOR-Tales of seafaring(拆点 + 奇偶最短路)

  • 类似状态机 dp 去维护两种最短路。包含简单路径的定义。

洛谷:P2620 虫洞(离散化 + 最短路递归建边)

  • 杂合了很多内容的最短路,难度较高,建图的过程用到 dp 思想,用递归处理非常巧妙。

Codeforces周赛 #765 (Div.2):C. Road Optimization(线性DP / 图论)

  • 图建好,跑最短路的过程也是 dp 的一种形式

染色法 —— 二分图

染色法应用领域不少,用以处理独特性质的 “黑白” 图。与二分图密切相关。

染色

洛谷:P1155 [NOIP2008 提高组] 双栈排序(二分图、模拟)

  • 此题不仅要在题目中挖掘出二分图性质,还要模拟栈的运行过程,容易出错。

2021 ICPC 区域赛(沈阳)B-Bitwise Exclusive-OR Sequence(异或环、二分图染色变种、贪心)

  • 不错的染色法应用题,涉及异或数学知识的染色,空间大小要注意。

洛谷:P1330 封锁阳光大学(二分图染色 + 最小同色点覆盖)

  • 最小点覆盖是指:最小的点覆盖图中所有边,点集中的点有可能相邻

牛客月赛:F-全体集合(二分图染色 + 性质)

  • 二分图性质:没有奇数环存在,若有,必定有点可以通过走奇数环来变色

二分图匹配

匈牙利算法,跟网络流沾边

二分图(概念、相关算法和题目应用)(全面整理)

拓扑序列

有向无环图 —— DAG,又称拓扑图。在有向无环图中可以用 dp 解决很多问题

洛谷:P6560 [SBCOI2020] 时光的流逝(博弈、拓扑序列)

  • 结合博弈论的拓扑,在入队操作上有所改变

洛谷:P3243 [HNOI2015]菜肴制作(拓扑序列、建反图、贪心)

  • 建反向边 + 贪心 来处理特殊顺序的拓扑

P1347 排序(拓扑序列 / Floyd传递闭包)

  • 用拓扑判断有无解。

强连通 / 双连通

将有向或无向图中的环缩成点,这样一个有向有环的图就会转化成 DAG,以此解决部分问题。

Tarjan算法 —— 强连通双连通缩点 模板

洛谷:P1262 间谍网络(强连通缩点 + 拓扑序维护信息)

  • 题目信息要考虑全,思考所有数据情况。

欧拉路径

只经过一张图中所有边一次走完这个图,这个图就是欧拉图,俗称一笔画问题

欧拉图(路径/回路)相关问题及知识点

洛谷:P2407 [SDOI2009]地图复原(标记欧拉回路)

图的遍历

【2021四川省赛】E.Don’t Really Like How The Story Ends(图的 dfs 遍历)

  • 考察对 dfs 遍历的理解

洛谷:P2189 小Z的传感器(并查集染色)

  • 不是染色法,但模拟染色的过程,用并查集维护使得时间可以接受。

洛谷:P1653 猴子(图存储、逆向思维 删边 -->加边)

  • 考察反向处理询问

P1363 幻象迷宫(图论 ? 搜索)

  • 比较特别的一道搜索题(分类为图论?理论上也是图)

洛谷例题:图的遍历、记录(有自环/无自环)

  • 遍历图时,可以通过标记已经走过的路径来减少时间,使得整个图只被走一次

洛谷:P3907 圈的异或(无向图找环 + 异或前缀和)

洛谷:P1444 [USACO1.3]虫洞 wormhole(找环 + 枚举暴搜)

  • 搜索时,对点和边搜索的安排,和顺序安排会有奇效

杂项

洛谷:P1524 十字绣(图论中 (出 / 入) 度的应用)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值