拓扑排序
拓扑排序的原理及其实现
题目 | 题解 | 类型 |
---|---|---|
HDU3342 Legal or Not | 题解 | 拓扑排序(裸题) |
POJ1270 Following Orders | 题解 | 拓扑排序(DFS回溯 + 字典序) |
HDU1285 确定比赛名次 | 题解 | 拓扑排序(BFS + 优先队列) |
HDU4857 逃生 | 题解 | 拓扑排序(反向建图 + BFS优先队列) |
HDU1811 Rank of Tetris | 题解 | 拓扑排序(BFS + 并查集缩点) |
I. Improve SPAM | 题解 | BFS+拓扑排序(BFS) |
欧拉路
欧拉路
题目 | 题解 | 类型 |
---|---|---|
HDU1878欧拉回路 | 题解 | 欧拉回路(并查集) |
UVA10054 The Necklace | 题解 | 欧拉回路(DFS输出路径) |
POJ1780 Code | 题解 | 欧拉回路(非递归DFS+构造) |
HDU2894 DeBruijin | 题解 | 欧拉回路(非递归DFS + 构造) |
HDU4850 Wow! Such String! | 题解 | 欧拉回路(非递归DFS + 构造 + 字符串) |
2020 ECNU Campus Online Invitational Contest E. Even Degree | 题解 | 欧拉回路(DFS输出路径 + 构造) |
HDU1116 Play on Words | 题解 | 欧拉路(有向图 + 并查集) |
HDU5883 The Best Path | 题解 | 欧拉路(异或) |
无向图的连通性
割点-百度百科
tarjan求割点、割边
双连通分量
题目 | 题解 | 类型 |
---|---|---|
POJ1144 Network | 题解 | 割点(tarjan) |
POJ 1523 SPF | 题解 | 割点(tarjan) |
UVA315 Network | 题解 | 割点水题 |
HDU4587 TWO NODES | 题解 | 割点(枚举 + tarjan) |
HDU2460 && POJ3694 Network | 题解 | 割边(tarjan + LCA) |
Critical Links | 题解 | 输出割边 |
HDU 3394 Railway | 题解 | 点双连通分量(tarjan + 割边) |
HDU3749 Financial Crisis | 题解 | 点双连通分量(tarjan + 并查集) |
POJ3352 Road Construction | 题解 | 边双连通分量(重边 + tarjan缩点) |
POJ3177 Redundant Paths | 题解 | 边双连通分量(重边 + tarjan缩点) |
有向图的连通性
强连通分量Kosaraju算法
强连通分量及缩点tarjan算法解析
全网最!详!细!Tarjan算法讲解。
题目 | 题解 | 类型 |
---|---|---|
HDU1269 迷宫城堡 | 题解 | 强连通分量(Kosaraju / Tarjan) |
POJ1236 Network of Schools | 题解 | 强连通分量(tarjan缩点) |
HDU1827 Summer Holiday | 题解 | 强连通分量(tarjan缩点) |
HDU3836 Equivalent Sets | 题解 | 强连通分量(tarjan缩点) |
HDU3639 Hawk-and-Chicken | 题解 | 强连通分量(tarjan缩点 + 反图 + DFS) |
HDU3072 Intelligence System | 题解 | 强连通分量(tarjan缩点 + 最小生成树) |
HDU3861 The King’s Problem | 题解 | 强连通分量(tarjan + 最小路径覆盖) |
2-SAT问题
研究总结2-sat问题
题目 | 题解 | 类型 |
---|---|---|
HDU3062 Party | 题解 | 2-SAT板子题 |
HDU1824 Let‘s go home | 题解 | 2-SAT板子题 |
最短路问题
Floyd算法
Bellman-Ford算法
SPFA算法
Dijkstra算法
Floyd最小环
差分约束系统
最小生成树
Prim算法
Kruskal算法
次小生成树模板
题目 | 题解 | 类型 |
---|---|---|
HDU1102 Constructing Roads | 题解 | prim |
HDU1233 还是畅通工程 | 题解 | Kruskal |
POJ1287 Networking | 题解 | 最小生成树水题(Prim、Kruskal) |
POJ1251 Jungle Roads | 题解 | 最小生成树裸题——kruskal |
HDU5627 Clarke and MST | 题解 | 最大生成树(Kruskal) |
HDU4081 Qin Shi Huang‘s National Road System | 题解 | 最小生成树变形(⭐) |
HDU4126 Genghis Khan the Conqueror | 题解 | 最小生成树 + 树形DP(⭐) |
HDU3072 Intelligence System | 题解 | 强连通分量(tarjan缩点 + 最小生成树) |
最大流
最大流问题与Ford-Fulkerson算法介绍
网络流入门到熟练
Dinic算法(研究总结,网络流)
网络流详解
题目 | 题解 | 类型 |
---|---|---|
HDU1532 Drainage Ditches | 题解 | 最大流(EK / Dinic) |
HDU3549 Flow Problem | 题解 | 最大流(EK、Dinic模板) |
POJ3426 ACM Computer Factory | 题解 | 最大流(EK + 输出路径) |
HDU4280 Island Transport | 题解 | 最大流(Dinic数组版模板) |
POJ3281 Dining | 题解 | 最大流(Dinic + 建图⭐) |
HDU 2732 Leapin‘ Lizards | 题解 | 最大流(Dinic + 拆点) |
最小费用最大流
题目 | 题解 | 类型 |
---|---|---|
POJ 2135Farm Tour | 题解 | 最小费用最大流模板 |
POJ2195 Going Home | 题解 | 最小费用最大流 |
HDU2686 Matrix | 题解 | 最大费用最大流 |
HDU3376 Matrix Again | 题解 | 最大费用最大流(链式前向星) |
HDU3667 Transportation | 题解 | 最小费用最大流 + 拆边 |
最小割
题目 | 题解 | 类型 |
---|---|---|
HDU3251 Being a Hero | 题解 | 最大流最小割(Dinic + 输出割边)⭐ |
二分图匹配
二分图匹配-匈牙利算法
题目 | 题解 | 类型 |
---|---|---|
HDU 2063 过山车 | 题解 | 二分图最大匹配(水) |
HDU1083 Courses | 题解 | 二分图最大匹配(水) |
HDU 1045 Fire Net | 题解 | 二分图最大匹配/DFS |
HDU3729 I‘m Telling the Truth | 题解 | 最大匹配 + 最大字典序 |
POJ 3041 Asteroids | 题解 | 最小点覆盖,最大匹配 |
HDU 1068 Girls and Boys | 题解 | 最大独立集(顶点数-最大匹配) |
HDU3605 Escape | 题解 | 二分图多重匹配 |
CodeForces - 687A.NP-Hard Problem | 题解 | 二分图染色 |
HDU 2444 The Accomodation of Students | 题解 | 二分图判定、最大匹配 |
HDU1526 A Plug for UNIX | 题解 | 二分匹配 + 传递闭包 |
HDU3861 The King’s Problem | 题解 | 最小路径覆盖 + 强连通分量 |