我正在寻找一种最佳路径算法,该算法可以找到从任何起始节点到最近的出口节点的最佳路径。
这种情况下的图是方形网格,邻域的所有成本都是1。 使用这些限制的任何优化都很好。
基本上,您从随机选择的入口输入方格,现在您想要找到最接近任何给定出口的路径。
到目前为止,我多次进行BFS,每次退出一次并合并结果。虽然我怀疑这是最有效的方式。
答案 0 :(得分:2)
你从所有出口开始做BFS。当您发现一个新的方块时,它与最近的出口的距离是前一个方格的距离+1,而路径方向是前一个方格。
由于(距离,方向)元组都不取决于您输入的位置,因此您可以为所有方块预先计算一次这些值,因此如果您再次在新入口处重新开始,则不必重新搜索。