题目
以下关于用搜索算法求解最短路径问题的说法中,不正确的是()。A. 假设状态数量有限,当所有单步代价都相同且大于0时,广度优先的图搜索是最优的。B. 假设状态数量有限,当所有单步代价都相同且大于0时,深度优先的图搜索是最优的。C. 给定两个状态,可能不存在两个状态之间的路径;也可能存在两个状态之间的路径,但不存在最短路径(如考虑存在负值的回路情况)。D. 图搜索算法通常比树搜索算法的时间效率更高。
以下关于用搜索算法求解最短路径问题的说法中,不正确的是()。
A. 假设状态数量有限,当所有单步代价都相同且大于0时,广度优先的图搜索是最优的。
B. 假设状态数量有限,当所有单步代价都相同且大于0时,深度优先的图搜索是最优的。
C. 给定两个状态,可能不存在两个状态之间的路径;也可能存在两个状态之间的路径,但不存在最短路径(如考虑存在负值的回路情况)。
D. 图搜索算法通常比树搜索算法的时间效率更高。
题目解答
答案
B. 假设状态数量有限,当所有单步代价都相同且大于0时,深度优先的图搜索是最优的。
解析
考查要点:本题主要考查对搜索算法(广度优先搜索、深度优先搜索)在最短路径问题中的性质理解,以及图搜索与树搜索的效率差异。
解题核心思路:
- 广度优先搜索(BFS)在单步代价相同且有限状态时能保证找到最短路径,而深度优先搜索(DFS)无法保证最优性。
- 负权回路会导致路径无限缩短,从而不存在最短路径。
- 图搜索通过记录已访问节点避免重复,通常比树搜索更高效。
破题关键点:
- 选项B错误:DFS不保证最优性。
- 选项C正确:负权回路使最短路径不存在。
- 选项D正确:图搜索效率更高。
选项分析
选项A
当所有单步代价相同且大于0时,广度优先搜索(BFS)通过层序遍历,保证找到最短路径。正确。
选项B
深度优先搜索(DFS)可能因路径选择顺序优先深入某一分支,而忽略更短路径。无法保证最优性,因此错误。
选项C
若存在负权回路,路径总成本可无限降低,故不存在最短路径。正确。
选项D
图搜索通过记录已访问节点避免重复,而树搜索可能生成冗余节点。因此图搜索效率更高。正确。