我试图找出获得/显示多个位置之间最短距离的最佳方法.为了最好地解释这一点,将其视为地图并使用以下内容.每个位置的所有距离和路径都已放入mysql数据库.
地点(信件 - >它可以到达的位置.和[]中的距离/时间)
A -> B [5]
A -> C [4]
B -> Z [1]
C -> Z [50]
Run Code Online (Sandbox Code Playgroud)
所以A可以去B,需要5分钟.虽然从A到C需要4分钟.
现在我想弄清楚的是让我们说他们当前在位置A并且想要到达Z.我怎样才能让系统通过数据库并确定A - > B - > Z是最短路径与A - > C - > Z相比.
我原本打算在每个系统上进行循环,但这个设置将包含数百个不同的位置和路径.所以我已经可以看到它创建无限循环,第二个它沿着一条路径返回到起始位置.
也许这是不可能的哈哈.
任何帮助或建议将不胜感激!
提前致谢!
该最短路径问题可以与众多的算法来解决.Dijkstra是经典之作: