首页 文章

树搜索算法(从边缘/队列中删除前节点 - 目标测试 - 展开)

提问于
浏览
0
  • 在最坏的情况下使用广度优先搜索访问了多少个节点(从队列中选择),当解在深度d时,分支因子是b,并且最大分支的深度是m?
    给出一个公式 .

  • 在最坏的情况下使用广度优先搜索生成多少个节点(由于扩展父节点而添加到队列中),当解决方案位于深度d时,分支因子为b,并且最大深度为分支是m?
    给出一个公式 .

  • 当解决方案位于深度d,并且分支因子为b,并且最大分支的深度为m时,使用深度优先搜索的队列的最小可能大小是多少?在一个小搜索树上解释你的答案 .

1 回答

  • 2
    • 1 b b2 ... bd即O(bd)

    • 1 b b2 ... bd 1 - b即O(bd 1)

    • b * m

    注意:DFS中的边缘是堆栈不是队列(或者您可以将其称为LIFO队列) .

    1,2:看下图作为b = 3的例子,其中我用红色圆圈表示了目标状态 .

    enter image description here

    对于此树,紫色框中的所有节点都被访问,而橙色框中的所有这些节点节点都被添加到边缘 .

    enter image description here

    3:在下图中,电路内的所有节点(设计非常差; D)都被添加到边缘 .

    enter image description here

相关问题