GESP 七级 · GESP 七级样题(C++ 组) 第 22 题

判断题 · 答案 B · 考点:算法

← 整套速查表 GESP 七级 全部真题

题目

简单有向图的深搜结果和广搜结果一样。( )

答案:B

考点

算法

解题思维

这题是个典型的“语义陷阱”题。拿到题先别急着想代码,先咬文嚼字:题目说的是“结果一样”还是“访问的节点集合一样”?深搜和广搜的本质差异在于遍历顺序,顺序不同,结果自然不同。

常见错误

学生最容易掉进两个坑:一是把“遍历结果”和“访问集合”混为一谈,以为只要都跑完了所有点就算结果一样;二是死记硬背遍历步骤,忽略了题目里“结果”这个词的严格定义。这两种情况都会导致误选A,掉进命题人设的语义坑里。

详细解析(节选)

【考点】有向图遍历|DFS与BFS的本质差异|概念辨析

命题人这次想卡住的是那些“只背步骤、不懂本质”的同学。GESP七级图论模块里,区分算法思维与死记硬背是高频考点,这道题就是典型代表。

深搜(DFS)和广搜(BFS)的核心区别在于:深搜用栈(或递归)优先往深处挖,广搜用队列一层层往外扩。这意味着它们的访问顺序天然不同——除非图退化成一条单路径,否则顺序肯定不一样。

题目问的是“结果一样”,这里有个关键的语义陷阱。命题人故意把“访问的节点集合相同”偷换成了“结果相同”。很多学生背过“DFS和BFS都会访问所有可达节点”,就以为这句话等同于“结果一样”,从而选A。这完全是概念混淆。

如果题目改成“是否访问所有可达节点”,那选A是对的;但现在的表述是“结果”,在算法语境下,结果通常指遍历的序列或访问顺序。顺序不同,结果就不一样。所以这道题的正确答案只能选B。

思考心法:拿到这种判断题,先别急着写代码或想结构,先拆解关键词。问的是“集合”还是“顺序”?问的是“是否访问”还是“结果如何”?命题人往往就在这种细微的语义差别上挖坑。刷题时要养成习惯:看到“结果”二字,立刻联想遍历序列;看到“集合”,才联想访问的节点范围。

避坑提醒:千万别被“都访问所有点”这句话误导,以为结果就一样。这是最容易被坑的地方。记住,深搜和广搜的遍历顺序不同,结果自然不同,除非图退化成单路径。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断