Java Dijkstra算法的编程与评价

Java Dijkstra算法的编程与评价,java,eclipse,computer-science,graph-algorithm,Java,Eclipse,Computer Science,Graph Algorithm,我要做一个关于最短路径算法的项目。我不是一个真正的专业人士,我只是一个普通的学生。我必须先找出一个问题(火车路线、公共汽车路线、任何旅行路线),然后选择合适的算法来解决它。然后我必须对它进行编程(使用java、python等编码语言),然后我应该对它进行评估(算法的速度、时间复杂度等),以及是否有更好的算法可以实现,而不是我首先选择的算法 像我一样,选择问题是最难的部分 不知道我应该探索什么样的问题来使用算法! 问候让我们以你居住的城市为例。乘坐任意两个公交车站,即A和B,以及整个通勤网络。这个

我要做一个关于最短路径算法的项目。我不是一个真正的专业人士,我只是一个普通的学生。我必须先找出一个问题(火车路线、公共汽车路线、任何旅行路线),然后选择合适的算法来解决它。然后我必须对它进行编程(使用java、python等编码语言),然后我应该对它进行评估(算法的速度、时间复杂度等),以及是否有更好的算法可以实现,而不是我首先选择的算法

像我一样,选择问题是最难的部分 不知道我应该探索什么样的问题来使用算法!
问候

让我们以你居住的城市为例。乘坐任意两个公交车站,即A和B,以及整个通勤网络。这个网络是一个图形。车站是节点,车站之间的通勤连接是边缘(边缘权重=公共汽车在两个车站之间行驶所需的时间)

比如说,你想在尽可能短的时间内从A旅行到B(你不会想浪费时间吧?)

Dijkstras算法具有表示通勤网络和节点A的图形作为输入,并且能够推断从A到任何其他站点的最短路径(包括从A到B的最短路径)

这对你有帮助吗?Dijkstra上的维基百科有更详细的例子


请澄清您的问题!让我们看看你到目前为止做了什么!我澄清一下。。希望现在更好。这个问题似乎离题了,因为它是关于选择要做的问题,而不是关于在处理其中一个问题时出现的问题。你在取笑我吗?空载者!!无论如何谢谢你。。我只想知道我该选什么然后再深入一点。。我认为这个网站是关于帮助别人完成他们应该做的事情!!对所以我可以用公交车站作为顶点,边是距离?我可以用距离代替时间吗?是的,没错。您可能希望根据移动所需的时间或距离对边进行加权(请注意,在顶点X和Y之间,如果这些站点之间存在直接总线连接,则我的模型中只有一条边=顶点)。请注意,这只是一个示例,也是有限模型中的一个;-)你几乎可以使用任何东西作为顶点和边,Dijkstra只能找到一个顶点和任何其他顶点之间的最短距离@user3236586@user3236586为了更好地使用它,JUNG2为Java提供了一个不错的实现。