c# – 在城市使用公共汽车的公共交通

codeday· 2019-11-17
本文来自 codeday ,作者 codeday
我正在开发一个Journey Planner网站.目前在这种情况下很少有简单的事情,即现在网站只能规划公交线路,目前公交车的时间不可用.所以这意味着我们只有总线路径存储在数据库中,因为总线时序不可用,所以旅行者的等待时间也不相关.可用的是单个公共汽车两站之间的时间和距离.

我认为使用无向加权图来存储每个公交车站的时间和距离成本是每条公交车的出发点.然后我可以使用Dijkstra算法根据用户偏好计算用户根据时间或距离输入的两个位置之间的最短路径.如果公交车路线在停靠点相交,然后使用这些交叉路口以便旅行者更换公交车,我会发现是否需要通过简单的C#功能使用两辆或三辆公交车.但每辆公交车都会有一张单独的图表.另一种方法(不确定这是否正确)方法是使用包含城市每个公交车站的图表作为节点,然后使用这种技术找出两站之间的行驶方式.哪种方法正确?我应该使用A *算法代替Dijkstra算法吗?

设计的一些一般要点:我希望应用程序是可扩展的,以便我可以在需要时添加其他传输方式.此外,如果可能的话,也可以在以后添加公交车时间而不对网站进行重大更改.我见过很多专家,他们参与了许多复杂的交通项目.因此,请以最具扩展性,模块化和可扩展的方式帮助我实现此功能的最佳方式.

最佳答案
图表必须是一个方向图 – 公路停在道路的两侧(即使在像英国这样很少有中位数的国家)也不是一样的停靠点!