在GPS上实现A *算法的打开和关闭列表

时间:2016-07-03 13:53:03

标签: java algorithm gps path-finding a-star

我目前正在尝试创建一个GPS系统,它可以获取地图数据,并在最短距离内找到起点和终点之间的最短距离。

程序接收顶点(每个顶点包含一个标签以及x和y坐标)和边缘(详细说明往返于哪些道路以及距离),然后存储在邻接列表中。

我已经决定使用A *算法并尝试遵循此introduction但我不确定如何实现打开和关闭列表。一个简单的向量是否足够,或者我是否需要使用其他类似优先级队列的东西?

1 个答案:

答案 0 :(得分:3)

此处的打开列表用于获取下一个最佳或最短路径,因此您可以使用优先级队列。

关闭列表只是为了丢弃你不想进一步使用的方块,你可以使用哈希表来实现关闭列表,这样你就可以在O(1)中找到这个方块是否被丢弃。