宽搜及应用本讲要点 宽搜及其算法思想 宽搜的算法实现 宽搜应用初步 引 言 搜索算法是基于计算机高速运算的特点而使用 的求解方法。它从问题的初始状态出发,根据约束 条件,按照一定的策略,有序推进,不断深入,最 终到达所有符合条件的目标状态(或无解),或者 找出所有可行解中的最优解。 按照推进的控制策略,搜索一般分为宽度优先 搜索和深度优先搜索。 白色表示未访问的节点,黑色表示已经访问的 节点,灰色表示:DFS中为正在访问的节点,BFS中 为已入队等待访问的节点。 深度优先搜索(DFS)与宽度优先搜索(BFS) 的比较 DFS BFS一、宽度优先搜索的算法思想 宽度优先搜索(Breadth First Search,BFS),简 称宽搜,又称为广度优先搜索。它是从初始结点开始 ,应用产生式规则和控制策略生成第一层结点,同时 检查目标结点是否在这些生成的结点中。若没有,再 用产生式规则将所有第一层结点逐一拓展,得到第二 层结点,并逐一检查第二层结点是否包含目标结点。 若没有,再用产生式规则拓展第二层结点。如此依次 拓展,检查下去,直到发现目标结点为止。如果拓展 完所有结点,都没有发现目标结