Skip to content
进阶

一句话答案

图核心算法:BFS/DFS 遍历 O(V+E)、Dijkstra 单源最短路 O(ElogV)、拓扑排序(DAG)、Kruskal 最小生成树。

核心要点
算法用途时间
BFS最短路(无权)O(V+E)
DFS连通性/环检测O(V+E)
Dijkstra单源最短路(正权)O(ElogV)
拓扑排序DAG排序O(V+E)

存储: 邻接表(稀疏图) / 邻接矩阵(稠密图)

追问与易错

追问方向:

  • BFS 和 DFS 什么场景用哪个?
  • Dijkstra 能处理负权边吗?
  • 怎么检测图中的环?

易错点:

  • ❌ DFS 能找最短路——无权图用 BFS 找最短路
  • ❌ Dijkstra 是万能最短路——不能处理负权

💡 记忆锚点

图的四大金刚:BFS像水波扩散(一层层往外,天然找无权最短路),DFS像钻迷宫(一条路走到底再回头,查连通性和环)。Dijkstra像贪心导航(每次确定最近的点,用堆优化O(ElogV),但不能走负权路),拓扑排序像排课程表(先修课必须排前面,只能用在DAG无环图)。