操作已完成
系列合集

图系列

共 15 篇 · 建议按顺序阅读

CZM 签名

第 1 篇 · 图系列第 1 篇:图的基本概念——从地图与关系到图

顶点、边、有向、无向、权重、度:用地图导航、社交网络、课程依赖三个例子把图的基本概念全部讲透。

2026/8/8 · 算法

第 2 篇 · 图系列第 2 篇:路径、环与连通性

路径、简单路径、环、连通、连通分量、桥与割点:用图把“关系网络”的结构语言全部讲清楚。

2026/8/8 · 算法

第 3 篇 · 图系列第 3 篇:图的存储——邻接矩阵、邻接表与边集

同一张图在内存里怎么放?邻接矩阵、邻接表、边集数组三种方案逐一拆解,比较空间与每种操作的代价。

2026/8/8 · 算法

第 4 篇 · 图系列第 4 篇:广度优先搜索 BFS

从起点一圈一圈往外扩:BFS 的队列机制、visited 的作用、手算走查、最短步数应用与复杂度,全部配图讲透。

2026/8/8 · 算法

第 5 篇 · 图系列第 5 篇:深度优先搜索 DFS

一路走到黑再回头:DFS 的递归与栈视角、前序后序、DFS 树、时间戳,以及与 BFS 的全面对比。

2026/8/8 · 算法

第 6 篇 · 图系列第 6 篇:BFS/DFS 的应用——连通分量、二分图与环

学会遍历之后能做什么?连通分量统计、二分图染色判定、环检测、洪水填充,四个经典应用全部图解。

2026/8/8 · 算法

第 7 篇 · 图系列第 7 篇:拓扑排序与 DAG

先修课、构建流程、任务调度都靠它:DAG 与拓扑排序的 Kahn 算法、DFS 后序写法、环检测与完整手算。

2026/8/8 · 算法

第 8 篇 · 图系列第 8 篇:最短路径——从 BFS 到 Dijkstra

无权图用 BFS、带权图怎么办?从“为什么 BFS 不能直接用于带权图”出发,自然引出 Dijkstra 的贪心思想与完整手算。

2026/8/8 · 算法

第 9 篇 · 图系列第 9 篇:Dijkstra 深入——堆优化与实现细节

Dijkstra 的正确性直觉、优先队列优化、路径还原、懒惰删除与常见 bug:把这一个算法吃到透。

2026/8/8 · 算法

第 10 篇 · 图系列第 10 篇:Bellman-Ford 与负环

Dijkstra 怕负权,Bellman-Ford 不怕:松弛 V-1 轮为什么够、负环怎么检测、SPFA 又是什么,全部图解。

2026/8/8 · 算法

第 11 篇 · 图系列第 11 篇:Floyd-Warshall——多源最短路

一次算出所有点对最短路的 DP 算法:中间点递推、三层循环、负环检测、路径还原与传递闭包。

2026/8/8 · 算法

第 12 篇 · 图系列第 12 篇:最小生成树——Kruskal 与 Prim

用最少的线连通所有点:切分定理、Kruskal 的边贪心与并查集、Prim 的点贪心与优先队列,两个算法一次讲透。

2026/8/8 · 算法

第 13 篇 · 图系列第 13 篇:强连通分量——Kosaraju 与 Tarjan

有向图里的“互相可达集团”:SCC 定义、两次 DFS 的 Kosaraju、一次 DFS 的 Tarjan,以及缩点成 DAG 的妙用。

2026/8/8 · 算法

第 14 篇 · 图系列第 14 篇:网络流——最大流最小割

管道能送多少水?流网络、残量图、增广路径、Edmonds-Karp 与最大流最小割定理,用配水管网讲透最大流。

2026/8/8 · 算法

第 15 篇 · 图系列第 15 篇:二分图匹配与图算法综合实战

用增广路给任务配对,再回到真实世界:拿到一个图问题该怎么选算法?完整决策树与系列总结收官。

2026/8/8 · 算法