我一直试图让我的aStar算法工作几天而没有成功。它围绕一个网格构建,每个网格代表一个"位置"宾语。该类包含网格上的X和Y值。我可以向各个方向移动,对角线和水平/垂直。 aStar为我返回的列表总是空的。这是所有相关的代码。
答案 0 :(得分:1)
初始化start
节点时,您不能为其分配parent
:
// current start node
Node current = new Node(start, null, 0, getDistance(start, finish));
因此,这个循环永远不会开始一次迭代:
while( current.parent != null ) {
path.add( current );
current = current.parent;
}
将path
留空。