搜索与回溯算法要点.docVIP

  • 15
  • 0
  • 约3.47万字
  • 约 34页
  • 2017-02-08 发布于湖北
  • 举报
搜索与回溯算法要点

搜索与回溯算法 回溯算法 2 一、回溯法的思想 2 二、实现要点 2 三、应用举例 2 【例1】马的遍历 2 【例2】选书 5 四、回溯典型例子 7 【例1】八皇后问题 7 【例2】骑士遍历问题 12 五、递归中体现回溯 15 【例1】走迷宫问题 15 搜索算法 19 一、深度优先搜索 19 二、广度优先搜索 29 回溯算法 一、回溯法的思想 在求解一些问题(如走迷宫、地图着色等问题)时,题目的要求可能是求出原问题的一种或所有可能的解决方案。这类问题的解往往是由一个一个的步骤或状态所构成的,每一步骤又有若干种可能的决策方案;由于没有固定、明确的数学解析方法,往往要采用搜索的做法,即从某一个初始状态出发,不断地向前(即下一个状态)搜索,以期最终达到目标状态,从而得到原问题的一个解或所有的解。在搜索的过程中,由于问题本身及所采取的搜索方法的特点(如在缺乏全局及足够的前瞻信息的情况下进行搜索等),会导致走到某一状态就走不下去的情况,这时,就必须回头(即回到上一步,而不是回到最初的状态),再尝试其他的可能性,换一个方向或方法再试试。这样,不断地向前探索、回溯,再向前、再回溯,直至最终得出问题的解,或者一路回溯到出发点(出现这种情况即表示原问题无解)。注意,这种搜索过程并不是尝试搜索问题解空间中所有的可能状态和路径,而是采用深度优先的方式,沿着一条路径,尽可能深入地向前探索。 二

文档评论(0)

1亿VIP精品文档

相关文档