我正在管理一个项目,可以描述如下。
应用程序应显示从A市到B市的列车连接,并根据总行程时间,总公里数,车站等待时间等进行优化。它有更多要求,但它们并不是那么难,所以我可以单独处理
我希望得到实施的建议。我在考虑间接图,其中城市是顶点,铁路是边缘。每条铁路都有起始城市,终点城市,长度和其他一些参数。
主要问题如下:在数据库中,将有指定的起始站,终点站和中间站的列车,具有给定的到达和离开时间。 您建议哪种算法能够找到从A市到B市的最佳连接?
我正在考虑以下问题:维度A[n][n]
会有矩阵,其中n
是城市数量。让a
和b
为城市A和B的ID。如果存在从A到B的直达列车,A[a][b]=1
,则为A[a][b]=0
。如果没有这样的中心,系统会尝试通过与A和B相连的城市找到连接。这是有效的解决方案吗?
答案 0 :(得分:3)
为每个轨道段创建边缘,以便您可以对交汇点和侧线等进行建模。节点将每个边缘组合在一起,它们不需要只是站点。
然后让自己的boost :: graph并使用其中一个算法为你做所有的努力工作:)建议的是A *或Dijkstra。