- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
-
- PAGE 20 -
东北大学信息科学与工程学院
数据结构课程设计报告
题目 汽车牌照的快速查询
课题组长 肖瑶
课题组成员 陈果 张帅
专业名称 计算机科学与技术班级 计算机 1307
指导教师 杨雷
2015 年 1 月
课程设计任务书
题目:
汽车牌照的快速查询
问题描述:
在汽车数据的信息模型中,汽车牌照是具有结构特点的一类关 键字。汽车牌照是字母和数字混编的, 例如 01B7238。利用查找和排序算法,实现辽宁省内汽车牌照的快速查找。
设计要求:
设计汽车牌照的快速查询程序。
)采用顺序表、静态链表等数据结构。
)利用静态链表对汽车牌照进行链式基数排序。
)采用折半查找汽车牌照。
)可以按城市进行分块索引查找。
)其它完善性功能。
指导教师签字:
2014 年 12 月 24 日
目录
课题概述 1
课题任务 1
课题原理 1
相关知识 3
需求分析 2
课题调研 2
用户需求分析 2
方案设计 2
总体功能设计 2
数据结构设计 2
函数原型设计 2
主算法设计 3
方案实现 7
开发环境与工具 7
程序设计关键技术 7
个人设计实现(按组员分工)
肖瑶设计实现 7
4.3.1 张帅设计实现 10
4.3.1 陈果设计实现 14
测试与调试 12
5.1 个人测试(按组员分工) . 12
肖瑶测试 12
张帅测试 14
5.1.3 测试 15
5.2 组装与系统测试 15
课题总结 17
课题评价 17
团队协作 17
下一步工作 17
个人设计小结(按组员分工) 18
肖瑶设计小结 18
陈果设计小结 18
张帅设计小结 19
附录 A 课题任务分工 20
课题程序设计分工 20
课题报告分工 21
附录 B 课题设计文档(光盘) 22
课程设计报告(电子版) 22
源程序代码( *.H ,*.CPP ) 22
工程与可执行文件) 22
屏幕演示录像文件(可选) 22
附录 C 用户操作手册(可选) 22
运行环境说明 22
操作说明 22
课题概述
课题任务
在汽车数据的信息模型中,汽车牌照是具有结构特点的一类关 键字。汽车牌照是字母和数字混编的,例如 01B7238。利用查找和排序算法,实现辽宁省内汽车牌照的快速查找。
设计汽车牌照的快速查询程序。
采用顺序表、静态链表等数据结构。
利用静态链表对汽车牌照进行链式基数排序。
采用折半查找汽车牌照。
可以按城市进行分块索引查找。
其它完善性功能。
课题原理
通过输入汽车牌照信息, 保存在一个文件中。 程序从文件中读入信息, 把车牌号码转换成相应的关键字并把车牌信息和关键字保存在链表中。 再通过链式基数排序算法整理这些信息便于查找,最后通过折半查找算法实现快速查找功能。
相关知识
一个汽车牌照相当于一辆汽车的身份证 ,因此通过查询汽车牌照便可知道这辆汽车的主人、品牌等信息。汽车牌照是由汉子、字母及数字组成,即多关键字,其中数字和字
母的比较 1 容易实现的, 考虑到汉字的存储等各方面的原因, 对汉字的排序并不是很容易就能完成的,因此不能直接对汉字排序。但特殊的是,汽车牌照中的汉字是各个省、直辖
市及自治区的简称(比如辽代表辽宁,京代表北京) ,一共 34 个。但是由于汉语拼音可以
和英文字母相互转换,因此可以按照汉语拼音的规则进行排序。
需求分析
课题调研
汽车牌照由汉子、字母、数字组成,一汉字 +字母 +数字方式呈现。要实现对车牌号码的排序与查找就得想办法把汉字和字母转换成数字。
用户需求分析
能对车牌号码实现链式基数排序,并能用查找算法让用户户能根据车牌号码查到相关信息,能够输出车牌信息。
方案设计
总体功能设计
从文件读入数据保存进链表
对车牌进行基数排序
二分查找查询汽车牌照
输出车牌信息
数据结构设计
程序要求实现对汽车牌照的排序与查找,而如果仅仅进行牌照的排序与查找,则显得 程序没有太大的实用性, 所以考虑在程序中加入例如车主的姓名以及车子的品牌等内容来增加程序的实用性。为了能够更好的完成这些功能,在这里选用链表来存储所有车辆的信息,
用链表中的单个节点来存储一辆汽车的信息, 而对应的各个节点的域中则存储其对应的车辆 信息(如车牌号码、车主姓名、车的品牌等信息) 。在存储汽车牌照中的汉字时,由于汉字在内存中占用两个字节,需要使用字符串数据来存储。其中的 26 个字母则使用一个一维字
符数组来存储。 车主的姓名及车子的品牌则使用一维字符数组来存储。 在基数排序时, 每趟
的数据收集由两个链队列来完成, 链队列的个数为基数的个数, 两个链队列的队列指针分别指向每组链队列的队头和队尾。
函数原型设计
main() :主函数;
Rnode
文档评论(0)