- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
公交线路乘车方案查询系统设计及实现
公交线路乘车方案查询系统设计与实现
一、实验目的
开发一个信息更新及时、界面友好、查询优化的公交查询系统,系统具备的基本功能是:
1、公交线路的数据输入与维护:线路的录入,修改,编辑功能;
2、公交线路的查询:自动,快速,灵活的查询功能;
3、乘车方案查询:起始站点线路查询,设定中转站点查询,最短路径查询功能。
在开发系统的过程中使学生能对以下知识进行巩固和扩充:
1,数据库理论知识;应用数据库理论对具体问题具体分析,设计出合理的数据库结构。
2,数据结构理论知识;根据具体问题提出合理的数据结构,并使用相应处理方法,理解图和和图相关的搜索算法。
3,算法设计与分析理论知识;对于不同的查询优化算法进行分析,选用合适的算法。
4,程序设计理论知识;系统的最终实现需要编程环境,不同程序语言的选用可以更好的理解程序设计的相关知识。
二、实验内容
1、数据库结构设计;
由于公交线路查询系统中所涉及的信息较多,它们之间的性质并不完全相同或者类似,势必造成信息冗余,但是为了系统提高查询速度和便利,可以牺牲存储空间,加快查询速度的方法。
表8-1公交线路表(line)
字段中文名 字段英文名 字段类型 字段长度 容许空 路线编号 line_id int 4 路线名称 line_name varchar 50 √ 始发车 fristbus varchar 50 √ 末班车 lastbus varchar 50 √ 站点1 station1 varchar 50 √ 站点2 station2 varchar 50 √ 站点3 station3 varchar 50 √ …… …… varchar 50 √ …… …… varchar 50 √ …… …… varchar 50 √ 站点45 station45 varchar 50 √
表8-2站点表(stop)
字段中文名 英文字段名 字段类型 长度 容许空 站点编号 stop_id int 4 站点名称 stop_name varchar 50 √
表8-3路线站点表(linestops)
字段中文名 英文字段名 字段类型 长度 容许空 路线编号 line_id int 4 √ 站点编号 stop_id int 4 √ 标记 ord int 4 √ 2、数据结构设计;
1)通过程序将line表中的所有数据(站点)信息存放入一个一维数组中;
2)编写程序再将该数组中所有相同的数据删除,这样就有了站点(stop)表;
3)将line表中的每条线路的站点一个一个记录下来存放入一个三列的二维数组中,如(1,火车站,1)表示:(线路编号:1;站名:火车站;线路所经站号:1);
4)对二维数组的第二列值进行修改,参照stop表,将其字符全部换为stop_id。
3、算法设计 ;
1)起始站点查询算法
第一步:查询经过这两个站点的所有公交线路,找出含有相同的线路编号的线路信息。
第二步:判断以上查询中是否有满足要求的记录,若有,则记录两站点在线路中的位置,判断是否满足行驶方向的要求,通过定义一个数组,将线路信息中的线路名称,起始和目的站点名称以及两站点之间的站点个数存入数组并输出。若没有满足的记录,证明查询的站点之间不能直达,线路需要转乘。
第三步:查询出两站点之间所有线路的站点交集(中转站点),将这些站点存放入一个一维数组中,查询从起始站点到达中转站点的所有公交线路,将线路信息中的线路名称,起始和中转站点名称以及两站点之间的站点个数存入一个二维数组;再查询从中转站点到达目的站点的所有公交线路,将线路信息中的线路名称,中转站点和目的站点名称以及两站点之间的站点个数存入另一个二维数组。
第四步:判断两组路线之间是否有相同的站点,相同的站点即为中转站,将转乘信息输出。
2)指定中转站点查询算法:
第一步:查询经过起始和中转站点的所有公交线路,将符合查询条件的线路信息中的线路名称,起始和中转站点名称以及两站点之间的站点个数存入一个二维数组。
第二步:再查询从中转站点到达目的站点的所有公交线路,将线路信息中的线路名称,中转站点和目的站点名称以及两站点之间的站点个数存入另一个二维数组。
第三步:判断两组路线之间是否有相同的站点,相同的站点即为中转站,将转乘信息输出。
3)最短路线查询算法
最短路线查询算法的思想是在起始点查询的算法的基础上,是对站点之间的个数加入了一段比较着站点个数代码,通过三个临时变量,用于记录所有线路中的最短路径和两站点信息在数组中的位置,最后通过临时变量记录下来的信息,输出数组中相应位置的信息。
4、开发平台选用
本系统基于集成软件开发平台(Delphi)及数据库管理系统软件(SQL Server)实现。
三、实验器材
1、PC机(已安
您可能关注的文档
最近下载
- 屋顶分布式光伏电站设计及施工方案设计.docx VIP
- 1.关于XX社区卫生服务中心五年中长期发展规划(详细版).pdf VIP
- 苏科版八年级数学上册第一章复习题.docx VIP
- 2025年成都兴城投资集团有限公司人员招聘笔试备考题库及答案解析.docx VIP
- 软件开发团队项目管理流程与规范.doc VIP
- 中国外汇交易中心暨全国银行间同业拆借中心 本币市场交易员培训教材 基础知识篇.docx VIP
- 肯尼亚马赛马拉国家野生动物保护区非洲的自然乐园.pptx VIP
- LTC流程设计与说明PPT课件.pptx
- 生物安全风险评估报告 .pdf VIP
- 08BJ3-2外装修标准图集.docx VIP
文档评论(0)