408算法题几乎每年必考广度优先遍历(BFS)和深度优先遍历(DFS),尤其是图的遍历部分,这两类算法不仅是数据结构的基础核心,更是联考高频考点,常以选择题或综合应用题形式出现,分值占比稳定。
-
考情分析:近10年408真题统计显示,图的遍历相关题目每年必考,其中2015年、2016年等年份甚至出现多道题目,覆盖DFS和BFS的遍历序列、时间复杂度、应用场景等细节。例如,2016年真题要求判断非法的DFS序列,2015年则考查有向图DFS序列的可能数量。
-
核心考点:
- 深度优先搜索:类似树的先序遍历,通过递归或栈实现,适合解决路径搜索、拓扑排序问题。其特点是“尽可能深”地探索分支,需注意回溯条件和访问标记。
- 广度优先搜索:类似树的层序遍历,依赖队列实现,适合最短路径、连通性检测。特点是“逐层扩展”,需掌握邻接顶点的访问顺序和队列操作。
两类算法的时间复杂度均为(顶点数+边数),但空间复杂度因实现方式不同而异。
-
命题趋势:考题常结合图的存储结构(如邻接矩阵、邻接表)设计综合题,例如要求写出特定图的遍历序列,或分析算法在最小生成树、关键路径中的应用。考生需熟练背诵算法代码,并能通过伪代码分析执行过程。
备考提示:务必通过真题反复训练两类算法的实现细节,同时关联其他图算法(如Dijkstra、Prim)对比学习,强化实际应用能力。