数据结构课设哈希表设计

数据结构课设哈希表设计

ID:30837984

大小:396.32 KB

页数:11页

时间:2019-01-04

数据结构课设哈希表设计_第1页
数据结构课设哈希表设计_第2页
数据结构课设哈希表设计_第3页
数据结构课设哈希表设计_第4页
数据结构课设哈希表设计_第5页
资源描述:

《数据结构课设哈希表设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、学号11710122数据结构A课程设计设计说明书哈希表设计起止日期:2013年12月30日至2014年1月3_H学生姓名李桃飞班级11计算机一班成绩指导教师(签字)计算机系2014年1月3日一、设计冃的1二、设计要求1三、设计步骤1四、设计内容21)问题描述22)基本要求23)设计过程24)测试数据5a.主界面:5b.按的进入显示哈希表:6c.返回上一级并选择查找:75心得体会86参考资料8课程设计任务书2013—2014学年第一学期计算机系计算机科学Q技术专业11级计算机1班级课程设计名称:数据结构A课程设计

2、设计题□:哈希农设计完成期限:口2013年12月30日至一2014年1月3日共]周设计依据、要求及主要内容(可另加附页):一、设计目的熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。二、设计要求在本课程设计过程中要求学生:(1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务;(2)按照课程设计的题目要求,独立地完成各项任务,严禁抄袭;凡发现抄袭,抄袭者与被抄袭者皆以零分计入木课程设计成绩。凡发现实验报告或源程序雷同,涉及的全部人员皆以零分计入木课程设计成绩。(3)认真编

3、写课程设计报告。课程设计报告的书写格式要求见附录2。三、设计步骤1、问题分析和任务定义;2、数据类型和系统设计;3、编码实现和静态检查;4、上机调试;5、5、总结和整理课程设计报告。四.设计内容哈希表设计1)问题描述针对本班和我熟悉的人的姓名汉语拼音设计一个哈希表,使得平均查找长度不超过R,并完成相应的建表和杳表程序。2)基本要求假设人名为屮国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2。哈希函数用除留余数法构造,用线性探测再散列法或链地址法处理冲突。3)设计过程在设计的过程中,

4、把名字的拼音录入到系统中,在创建哈希表,将字符串的各个字符所对应的ASCII码相加,所得的整数做为哈希表的关键字;随机数47,哈希表长度50查找功能的的实现:在解决查找冲突的过程,采用的是线性探测在散列的方式,查询程序的图如下:找姓名关键字时的代码:for(i=0;i

5、or(i=0;i

6、.py=NameList[i].py;IlashList[adr].si=l;}else//冲突{while(HashList[dJ.k!=0){d=(d»NanieList[i].k%10H)%M;//随机探测再散列法处理冲突sum二sum+1;//查找次数加1};IlashList[d].k=NameList[i].k;llashList[d].py二NameList[i].py;HashList[d].si=sum+l;查找过程代码:voidFindList()stringname;ints0=0,r,s

7、um=l,adr,d;cout«z,请输入姓名的拼音:,z«endl;cin»name;;for(r=0;r<20;r++)//求出姓名的拼音所对应的整数(关键字)s0+二name[r];adr=sO%M;//使用哈希函数d=adr;if(HashList[adr].k==sO)//分3种情况进彳亍判断cout«/z姓名:〃〈〈HashList[d]・py«〃关键字:〃<

8、{intg=0;while(g=0)Id二(d+s0%10+l)%M;//随机探测再散列法处理冲突sum二sum+1;if(HashList[d]・k==0){cout<<,z无此记录!v«endl;g二1;}if(HashList[d].k==sO){cout«,z姓名:〃《HashList[d].py«〃〃〈<〃关键字:"«s0<〈〃《查找长度为:z,«sum«endl;g二1;}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。