Skip to content

序言

关于本书

这是《LeetCode 算法通关之路》系列的第四册——图论与搜索篇

图是一种强大的数据结构,能够描述实体之间的复杂关系。从社交网络到地图导航,从任务调度到推荐系统,图论无处不在。

前置要求

学习本书前,你需要具备:

  • ✅ 扎实的递归基础(第二册第一部分)
  • ✅ 熟悉队列和栈的操作(第一册第六部分)
  • ✅ 了解哈希表的使用(第一册第八部分)
  • ✅ 有一定的动态规划基础会更好(第三册)

本书内容

本书系统讲解图论与搜索算法:

章节内容典型问题
图的基础概念、存储、建模思维图论问题的基础
DFS深度优先搜索专题岛屿问题、路径搜索
BFS广度优先搜索最短路径、层次遍历
图遍历综合DFS vs BFS 选择连通分量、二分图判定
拓扑排序Kahn、DFS 实现课程表系列
并查集路径压缩、按秩合并连通性问题
最短路径Dijkstra、Bellman-Ford、Floyd网络延迟、航班问题
最小生成树Kruskal、Prim最小连接代价
高级搜索双向 BFS、A*滑动谜题、八数码
二分图匹配匈牙利算法最大匹配问题

DFS 专题的重要性

本书特别设置了 DFS 专题章节,因为:

  1. DFS 是图论的核心:理解 DFS 才能理解图的遍历
  2. DFS 应用广泛:连通性、路径搜索、拓扑排序都依赖 DFS
  3. DFS 思维是基础:很多高级算法都建立在 DFS 之上

本书在丛书中的位置

第一册 → 第二册 → 第三册 → [第四册] → 第五册 → 第六册
数据结构   算法技巧   动态规划   图论搜索   高级结构   算法竞赛
  基础       篇       精通篇     篇        篇        实战篇

与相邻册次的关系

← 前置:第三册《动态规划精通篇》

  • 最短路径算法与 DP 思想相通
  • 图上 DP 是常见面试题型

→ 后续:第五册《高级数据结构篇》

  • 树链剖分、LCA 等建立在图论基础上
  • 并查集的高级应用

→ 关联:第六册《算法竞赛实战篇》

  • 网络流是图论的高级主题,在第六册讲解

学习建议

  1. 先学 DFS/BFS:这是图论的基础中的基础
  2. 画图理解:每道题都画图,有助于理解算法过程
  3. 注意建模:很多问题的难点在于如何建模成图
  4. 区分场景:什么时候用 DFS,什么时候用 BFS

面试重点

图论在面试中的考察频率:

知识点面试频率难度
DFS/BFS⭐⭐⭐⭐⭐中等
拓扑排序⭐⭐⭐⭐中等
并查集⭐⭐⭐⭐中等
最短路径⭐⭐⭐中等-困难
最小生成树⭐⭐中等

开始学习

图论是算法世界的重要版图。

掌握它,你将能够解决更多复杂的实际问题。


祝学习愉快!

序言 has loaded