我有一个关于一个程序的Java算法的问题。我想写一个android程序,提供有关“巴士路线”的信息。程序工作时,用户选择一个汽车站(A站),程序对用户说:“乘4路公交车,然后下车B station.And,乘8路公交车,然后下车C站。”有人知道那个程序算法吗?我能用什么来节省每条公共汽车路线呢?Queue,stack或诸如此类的东西?我可以使用BFS或DFS算法来处理最短的公交线路吗?
Purpose of program;用户如何使用总线找到交通线路。(4路公共汽车不直接到8站,用户需要转乘到B站)
I need to know ;我使用哪种数据结构和最短路径算法。

发布于 2014-05-05 16:00:13
Dijkstra算法的Java实现
在代码中顶点被初始化的位置,您将初始化所有的总线路线。
在定义邻接矩阵的地方,为每个停站初始化可用公共汽车的车站。现在运行算法。您可能会在每条边缘保留额外的信息,例如可能的总线号码。
发布于 2014-05-05 15:58:57
假设您在后台使用Java,并且使用Dijkstra算法,您基本上需要获取和管理一个图形实例。也许甚至有一些图形库/实现已经有了DFS和BFS算法,比如Dijkstra或Kruskal。
我建议基于JavaHashTable创建一个图形实现。每个节点作为Key,邻接列表作为每个节点的Value。
使用ArrayList、Stack的Queue或PriorityQueue可能会有所帮助。
您可能需要实现一个简单的Node类,并获得执行Dijsktra、DFS、Kruskal、BFS等的静态方法。
https://stackoverflow.com/questions/23476261
复制相似问题