图论
图论题研究的是节点以及节点之间的连接关系。题目不一定会直接给出“图”:网格中的格子可以看成节点,相邻关系可以看成边;依赖关系、道路和社交关系也都可以抽象成图。
常见题型
网格为什么也是图
对于二维网格,可以把每个格子看成一个节点。如果题目规定只能向上、下、左、右移动,那么一个格子最多与四个相邻格子之间存在边。这样,网格上的搜索就转化成了图的遍历。
以“岛屿数量”为例:
- 每块陆地是一个节点;
- 相邻的两块陆地之间有一条边;
- 一座岛屿就是一个连通分量;
- 对每个尚未访问的陆地执行一次 BFS 或 DFS,就能统计连通分量数量。

