-3

我想实现 Dijkstra 的算法来找到两个节点之间的最短距离。

4

2 回答 2

2

我已将此 Java 工具集成到我的 android 项目中: https ://github.com/stewbob/dijkstra

于 2013-08-01T09:32:20.117 回答
0

这个问题已经问过你的问题是否不同然后提供更多信息 谷歌地图算法

否则你可以这样做。

到目前为止,已经引入了几种算法来找出网络中的最短路径。尽管没有一种算法在所有情况下都被认为是最好的,但 Dijkstra 的算法是已知最快的单源最短路径算法,用于具有无界非负权重的任意有向图。该算法常用于路由。该算法在 android 中实现并由适当的 GUI 支持时可以生成一个简单而强大的应用程序,可供营销主管、游客或城市新手等使用。在当今世界燃料不足的情况下,了解最短路径很有用。公共交通也可以建模为一个图:每个车站都由一个节点表示,如果有一条线直接连接两个车站,则存在一条边。在这里,我使用了一个大学场所进行实验。

在另一个活动中,谷歌地图被显示并且设备的当前位置也被显示。地理区域上的所有节点都使用 canvas.drawText 编号,最短路径使用 canvas.drawPath 绘制。其中一个类包含创建和升级 SQLite 数据库的所有代码,以及打开和关闭数据库以及插入和删除以及检索和更新记录的代码。营销主管到目前为止访问的所有节点都可以在谷歌地图上查看,并通过添加电话簿中的联系人向他的权威或任何人发送短信。该应用程序可以与 Web 服务器连接。如果执行官不知道下一个要访问的地方,他会向服务器发送请求以向他提供必要的信息。Web 服务器是在 asp.net 中制作的。那里使用的数据库是 Ms Access。

如果营销主管正在使用此应用程序,那么他们都将连接到营销公司的 Web 服务器,并在该服务器上查询下一个要访问的位置。SQLite 存储到目前为止访问的所有节点。根据开发人员指南“SQLite 是一个功能强大且轻量级的关系数据库引擎,适用于所有应用程序”。

于 2013-08-01T09:35:24.017 回答