我搜索了A*算法/伪代码,按照它的步骤编写了代码。我使用曼哈顿距离作为h(n)的评估函数(f(n) = g(n) + h(n))。以下是结果,
![](https://istack.dev59.com/5fsqY.webp)
(来源:uploadir.com) 当没有墙阻挡路径时,这种情况总是发生。但是当我放置了很多墙壁时,似乎它选择了最短路径。这是最短路径吗?为什么不像下面这个呢?![](https://istack.dev59.com/rio38.webp)
(来源:uploadir.com) 这个也是A*曼哈顿算法,它们的大小都是一样的(19x19)。这个来自http://qiao.github.com/PathFinding.js/visual/。
![](https://istack.dev59.com/5fsqY.webp)
(来源:uploadir.com) 当没有墙阻挡路径时,这种情况总是发生。但是当我放置了很多墙壁时,似乎它选择了最短路径。这是最短路径吗?为什么不像下面这个呢?
![](https://istack.dev59.com/rio38.webp)
(来源:uploadir.com) 这个也是A*曼哈顿算法,它们的大小都是一样的(19x19)。这个来自http://qiao.github.com/PathFinding.js/visual/。