搜索方式
经典问题
深度优先搜索(
Deep First Search
)
求割顶和割边
求有向图中的强连通分量
求欧拉回路
Hanoi
塔等递归求解问题
广度优先搜索(
Broad First Search
)
求单源最短路径(迭代的思想)
特别的,当任两点间的权值都相等时,广度
优先搜索的时间复杂度为
O
(
n + e
)
,
优于传
统的
Dijkstra
算法。
求网络流问题中的增广轨
表中所列大部分都是图论中的基础问题,很多题目都以其为基本模型而出。可见,搜索
算法早已成为选手必须掌握的基本功,
而它广泛的灵活性和实用性则是以下我们所要探讨的
关键。
3.1.2
常用的搜索算法
一
迭代加深搜索
先限定搜索树的最大深度
MaxDeep
再搜索。
如果无解就加大
MaxDeep
继续搜。
虽然
这样进行了很多重复的工作,
但是由于搜索的工作量与深度成指数关系,
因此上一次
(重
复的)
工作量比起当前的搜索量来是较小的。
这种方法适用于搜索树较宽且深、
但可行
解较浅的题目。
这样的题目