广度优先搜索与深度优先搜索的区别:
- 广搜一般用于状态表示比较简单、求最优策略的问题
优点:是一种完备策略,即只要问题有解,它就一定可以找到解。并且,广度优先搜索找到的解,还一定是路径最短的解。
缺点:盲目性较大,尤其是当目标节点距初始节点较远时,将产生许多无用的节点,因此其搜索效率较低。需要保存所有扩展出的状态,占用的空间大
数据结构:队列
- 深搜几乎可以用于任何问题
只需要保存从起始状态到当前状态路径上的节点
数据结构:栈
广度优先搜索与深度优先搜索的区别:
优点:是一种完备策略,即只要问题有解,它就一定可以找到解。并且,广度优先搜索找到的解,还一定是路径最短的解。
缺点:盲目性较大,尤其是当目标节点距初始节点较远时,将产生许多无用的节点,因此其搜索效率较低。需要保存所有扩展出的状态,占用的空间大
数据结构:队列
只需要保存从起始状态到当前状态路径上的节点
数据结构:栈