在《查询算法》一文中已经实现了换乘算法,但是,使用存储过程InquiryT2查询从“东圃镇”到“车 陂路口”的乘车路线时,发现居然用了5分钟才查找出结果,这样的效率显然不适合实际应用。因此,有 必要对原有的换乘算法进行优化和改进。在本文中,将给出一种改进的换乘算法,相比原有的算法,改进 后的算法功能更强,效率更优。
1. “压缩”RouteT0
假设RouteT0有以下几行
如下图所示,当查询S1到S4的二次换乘路线时,将会产生3×2×4=24个结果
从图中可以看出,第1段路线中的3条线路的起点和站点都相同(第2、3段路线也是如此),事实上, 换乘查询中关心的是两个站点之间有无线路可通,而不关心是乘坐什么路线,因此,可以将RouteT0压缩 为:
时间: 2024-10-30 21:01:39