• 迭代加深
    • 如果在当前深度下搜索不到答案,就把深度限制增加,重新进行一次搜索。
    • 当搜索树规模随着层次的深入增长很快,并且我们能够确保答案再一个较为浅层的节点时,就可以采用迭代加深的dfs。
  • 双向搜索
    • 可以避免在深层子树上浪费时间。
    • 在一些题目中,问题不但有”初态“,还具有终态,并且从初态开始搜索与从终态开始逆向搜索产生的搜索树都能覆盖整个状态空间。
    • 在这样的情况下,就可以采用双向搜索——从初态和终态出发各搜索一半状态,产生两棵深度减半的搜索树,在中间交会、组合成最终的答案。

发表评论

邮箱地址不会被公开。 必填项已用*标注