题目
深度优先搜索策略中,扩展节点n,将其子节点放入OP E. N表[1]端,并为每个子节点配置指向节点n的指针。A. 末B. 前C. 栈D. 队列
深度优先搜索策略中,扩展节点n,将其子节点放入OP
- E. N表[1]端,并为每个子节点配置指向节点n的指针。
- A. 末
- B. 前
- C. 栈
- D. 队列
题目解答
答案
A
解析
深度优先搜索(DFS)的核心是利用栈(stack)结构,遵循“先进后出”(LIFO)原则。在扩展节点时,需将子节点按特定顺序加入OPEN表(待处理节点表)。关键点在于:子节点应添加到栈顶(末端),以确保后续处理时能优先探索最新生成的子节点,从而实现“深度优先”的搜索策略。
核心思路
- DFS的数据结构:OPEN表采用栈结构。
- 子节点添加位置:扩展节点n时,生成的子节点需按顺序压入栈顶(即OPEN表的末端)。
- 指针配置:每个子节点需记录指向父节点n的指针,用于路径回溯。
选项分析
- A. 末:正确。子节点添加到栈的末尾(栈顶),符合DFS的处理逻辑。
- B. 前:错误。前段通常指栈底,与DFS的“先进后出”矛盾。
- C. 栈:干扰项。虽然DFS使用栈,但题目问的是具体位置(末端)。
- D. 队列:错误。队列用于广度优先搜索(BFS),而非DFS。