②判断终点站是否为空?如果不为空就转③;否则就提示信息“请输入终点站信息”。
③判断起始站点是否存在?如果不存在就提示信息“该站点不存在,请确认“,否则就转④。
④判断终点站是否存在?如果不存在就提示信息“该站点不存在,请确认“,否则就转⑤。
⑤查找起始站点和终点站所在所有线路的线路ID,转⑥。
⑥判断起点站和终点站的线路ID的交集是否为空?如果不为空,则有线路直达起点站和终点站,结束迭代并输出相关内容;否则转⑦。
公安行政行为与侦查行为的区别⑦查找起点站能直达的所有站点和能直达终点站的所有站点,转⑧。
⑧判断⑦中两站点的交集是否为空?如果不为空则此为一次换乘,结束迭代,输出相关信息;否则就转⑨。
⑨查找起点站经过一次换乘能够直达的所有站点和直达终点站的所有站点,转⑩。
⑩判断⑨中两站点的交集是否为空?如果不为空则为二次换乘,结束迭代,输入相关信息;否则就继续。
11继续对所有的站点进行迭代,直到所有的站点迭代完为止。
由于该功能设计的逻辑关系比较复杂,需要对数据库作多次循环判断,因此采用存储过程和视图共同来实现。算法的时间复杂度为O(n3)。
5.总结
本文完成了基于成本优先的公交查询系统的设计,实现了对所需站点和线路的查询,并重点实现了以一次换乘和二次换乘为主的查询。本系统利用存储过程和视图相结合的方式完成了对于换乘的查询,但在技术上还存在一定的不完善性:在公交换乘的过程中,对于一次、二次换乘的辨别还有待完善。
上一页 [1] [2] [3] [4] [5]
C#公交查询系统的设计与实现 第5页下载如图片无法显示或论文不完整,请联系qq752018766