深度优先搜索需要使用栈结构,广度优先搜索需要使用队列结构。
举一反三
- 利用Horn子句进行推理,使用的是什么样的搜索方法( ): A: 深度优先搜索和广度优先搜索都不是 B: 深度优先搜索和广度优先搜索都可以 C: 广度优先搜索 D: 深度优先搜索
- 下列四种应用中,哪种应用需要使用队列实现( )。 A: 括号串匹配的判断 B: 深度优先搜索 C: 十进制转换成二进制 D: 广度优先搜索
- 某个国家的所有城市都有高速路相连。罪行刚结束,就被警察及时发现并开始追捕罪犯。罪犯一直通过高速路逃跑。假设每个城市之间的高速路花费时间相同,下面说法正确的是 A: 警察可以用广度优先搜索方法,就近搜索所有最近的城市。 B: 警察实际采用深度优先搜索,可以避免了队列的大量的回退操作。 C: 警察实际不会用深度优先搜索,因为如果初始搜索方向错误,罪犯就可能跑很远了。 D: 广度优先搜索可以用最短路径搜索案发地最近的城市,因此应该用广度优先搜索算法。 E: 广度优先搜索和深度优先搜索,都是借助栈实现的。 F: 广度优先搜索和深度优先搜索,都是借助队列实现的。 G: 广度优先搜索是借助队列实现的,深度优先搜索是借助栈实现的。 H: 广度优先搜索是借助栈实现的,深度优先搜索是借助队列实现的。
- 下列四种应用中,哪种应用可以使用队列实现( )。 A: 多项式加法 B: 广度优先搜索 C: 深度优先搜索 D: A和B
- 图的广度优先搜索使用的数据结构是() A: 队列 B: 树 C: 栈 D: 集合