数据结构课程设计论文
目录
键入章标题(第1 级) (1)
键入章标题(第2 级) (2)
键入章标题(第3 级) (3)
键入章标题(第1 级) (4)
键入章标题(第2 级) (5)
键入章标题(第3 级) (6)
第一章需求分析
1、设计目的
通过实习,了解并初步掌握设计、实现较大系统的完整过程,包括系统分析、编码设计、系统集成、以及调试分析,熟练掌握数据结构的选择、设计、实现以及操作方法,为进一步的应用开发打好基础。
2、问题描述
随着计算机发展和现代的交通网络非常发达的今天,人们出差、旅游或做其他出行时,都有新的要求,不仅关心节省交通费用,而且对里程和所需时间等问题也很感兴趣。
对于这样一个人们关心的问题,可利用计算机建立一个交通咨询系统。为人们提供方便的查询服务,从而达到满足广大客户在交通咨询过程中实现所用时间最短、费用最小而且中转次数最少的要求。
3、设计要求
用户可以通过系统录入出发地和目的地查询出所有的使用交通工具,中转次数,所需要的费用和所用的时间。在设计要考虑为用户提供三
种最优的方案,实现从出发地到目的地所用时间最短、费用最小而且
中转次数最少的要求。
系统管理人员可以对城市信息、列车时刻表和飞机航班表的编辑、删除和管理。
第二章系统设计
1、总体设计
根据用户的需求本系统整体分用户查询、系统管理和系统存储三个部分。
本系统使用Microsoft SQL Server 2008 数据库可以对系统管理人员录入的数据进行录入、修改和存储。
为用户录入的数据进行录入和查询,本系统使用Microsoft Visual Studio 2010中的C#.net 语言来编写数据录入、用户管理和查询。
首先使用数据库查找出所有的路径,再使用迪杰斯特拉算法编程求算得出最近或最便宜路径。
2、程序功能设计
数据存储
通过Microsoft Visual Studio 2010中的C#.net 语言编写录入、修改、和编辑城市信息(城市名、代码)、交通信息(城市间的里程、各航班和列车
时刻)存储于数据库中方便查找。
最优决策功能模块(fast or province)。
①、读入城市信息和交通信息,用邻接表生成含权网络,表头数组中的元
素存放城市名及对方城市到达该元素所代表城市的所有信息;表头数组中
的元素所对应的单链表存放与该元素所代表的城市有交通联系的城市(代
码、里程、航班、列车车次)。
数据结构课程设计论文
②根据具体最优决策的要求,用Dijkstra算法求出出发城市到其它各城市
的最优值(最短时间或最小的费用),搜索过程中所经过城市的局部最优信
息都保存在邻接表的表头数组中。其目的城市所代表的元素中就保存了所
需的最优决策结果。这过程中,要用队列或栈保存局部最优决策值(局部
最短的时间或最省的费用)变小的城市,其相应的初始值可为∞,并在表
头数组对应的城市元素中保存响应的信息。开始时,栈(队)中只有出发地
城市,随着对栈(队)顶(首)城市有交通联系的城市求得决策值(最短时间或
最小的费用),若该值是局部最优值且该城市不在栈(队)中,则进栈(队),
直至栈(队)为空。
③输出结果。从目的城市出发,搜索到出发城市,所经过的城市均入栈,再逐一出栈栈中的城市,输出保存在表头数组中对应城市的信息(对方城市的出发信息,里程、时间、费用等)及最终结果。即输出依次于何时何地乘坐几点的飞机或火车于何时到达何地;最终所需的最快需要多长时间才能到达及旅费,或者最少需要多少旅费才能到达及时间。
第三章程序流程图
第四章使用说明
1、系统运行系统
硬件:
处理器:英特尔酷睿2 双核E7500GHz以上;
内存:要求2 GB以上
硬盘:320 GB以上;
显卡:Nvidia GeForce G100 ( 256 MB );
光驱:DVD光驱
软件:
操作系统:Windows 7 旗舰版32位;
Net:frameWork4.0以上。
2、安装系统
如图1所示点击Setup图标安装《全国交通咨询系统》
图 1
如图2所示点击“下一步”
图 2如图3所示,选择安装的路径后点击“下一步”
图 3
如图4所示,点击“下一步”开始安装
图 4如图5所示开始安装
图 5
如图6所示安装完成。
图 6
如图7所示,当安装完成后在管理器中输入“C:\Program Files\中国石油大学\全国交通咨询系统”后,在“Database”目录下点击右键选择“属性”
图 7
如图8所示将“User”用户权限改为完全控制即可完成安装。
图 8
3、调试运行系统
如图9所示,在桌面上点击“全国交通咨询”快捷方式运行本系统
图 9
如图10所示,输入用户姓名“王树楠”用户密码“038177”后点击“确定”。
图 10
如图11所示,进入主界面。
图 11
4、添加登录人员
如图10所示,输入用户姓名“王树楠”用户密码“038177”后点击“确定”,进入添加管理员界面输入姓名后点击保存如图12所示,再输入密码如图13所示。完成添加管理人员。
图 12
图 13
5、删除登录人员
如图10所示,输入用户姓名“王树楠”用户密码“038177”后点击“确定”,进入删除管理员界面如图14所示。选择用户名后点击“确定”即可删除用户。
图 14
6、修改密码
如图15所示,正确输入原密码后再输入新密码即可修改。
图 15
7、交通管理
如图16所示这里可以点击“”进行添加数据到数据库中,也可修改数据,如果要保存点击“”
按钮将添加可修改内容保存数据库中。如要删除记录点击“”后当前记录删除,如确认删除点击“”如取消请关闭本页面即可。
图 16
8、全国交通咨询
如图11所示点击“”进入全国交通咨询界面。
图 17
在此界面中输入出发地和目的地后点击“查找”按钮后,程序按照所录入的数据库中找出所有信息并有使用Floyd算法计算出从任意定城市到其他任意城市之间的最短路径、或费用最低路径并且是最快到达、最省钱到达并方案列出到界面上。如“红字”所示。
第五章总结
通过编写“全国交通咨询”系统过程中,学过了好多过去没有学过的内容,加深的对所学内容的理解,学会了如何对数据库进行操作,Floyd算法以及什么是数据结构。
总的来说,这次编程还是学到了不少东西,尽管微乎其微,算法逼近是死的,但人的大脑是活的,只有不断地实践,才能找到信心,也才能学到东西,尽管这次编程有些算法借鉴网络上的,但还是可以学到很多东西,怎样的思考方法,怎样连接是逻辑语句更加完善。
所以在编程中和调试过程中要认真分析和善于发现问题并及时解决的习惯,不懂得及时问老师或其他同学通过本次实验,掌握了最短路径的问题,并结合图的存储结构,狄克斯特拉算法、弗洛伊德算法等解决交通资讯系统的设计问题,源程序打出来后有多处错误,大小写错误、符号错误、遗漏错误。
还有就是打包后不知道如何将数据库文件的权限改为完全控制。
不管如何,我还是认为通过这次为我在编程方面打下了基础,同时也要感谢老师对我的指导。在这里郑重的说一声“老师谢谢你!!”
第六章参考文献
1、《数据库教程(第三版)》李春葆尹为民李蓉蓉蒋晶珏喻丹丹编著 [M]
清华大学出版社
2、《数据库教程上机实验指导(第三版)》李春葆尹为民李蓉蓉蒋晶珏喻丹丹编著[M]
清华大学出版社
第七章附录
1、原代码
2、报告