您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用python从节点n开始的所有长度为L的路径

使用python从节点n开始的所有长度为L的路径

我只想介绍Lance Helsten的出色答案:

深度限制搜索搜索特定深度(称为长度L)内的特定节点,并在找到它时停止搜索。如果您在他的答案中查看Wiki链接中的伪代码,您将会理解:

DLS(node, goal, depth) {
  if ( depth >= 0 ) {
    if ( node == goal )
      return node

    for each child in expand(node)
      DLS(child, goal, depth-1)
  }
}

但是,对于您而言,从节点寻找长度为L的所有路径时,您将不会在任何地方停下来。因此,伪代码必须修改为:

DLS(node, depth) {
    for each child in expand(node) {
      record paths as [node, child]
      DLS(child, depth-1)
    }
}

在记录了DLS的连续嵌套中的所有单链接路径后,只需乘以它们的乘积即可获得整个路径。这些数量为您提供了从节点开始的所需深度的路径数量

python 2022/1/1 18:47:47 有337人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶