我有一个随机矩阵,例如:
3 A 6 8
9 2 7* 1
6 6 9 1
2 #3 4 B
我需要找到从A
到B
的最短路径。 *
和#
标记是跳跃点。如果您使用*
标记的号码,则可以跳转至#
标记的号码。
答案 0 :(得分:4)
如果矩阵中的值是一个字段到另一个字段的移动成本,则您需要的算法是A*。维基百科为您提供了一些伪代码,但如果您询问Google,您会发现每种语言都有大量示例实现。
如果移动成本总是相同,那么它也是A *算法,但在特殊情况下它是Dijkstra's algorithm。
A *基本上是Dijkstra的算法,并考虑改变运动成本。