- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
郑州轻工业学院
课 程 设 计 任 务 书
题目 电话号码查询系统
专业、班级 计科10-01 学号 41 姓名王平
主要内容:设计哈希表实现电话号码查找系统
基本要求:从键盘输入各记录,分别以电话号码和用户名为关
键字设计哈希表;采用不同的哈希函数,比较冲突率;采用适当
的方法解决冲突;在哈希函数确定的前提下,尝试不同类型处理
冲突的方法,考察平均查找长度的变化;查找并显示给定电话号
码的记录;查找并显示给定用户名的记录。
主要参考资料等:数据结构课本(c 语言版)
完 成 期 限:21012 年6 月21 号
指导教师签名:
课程负责人签名:
12 年 6 月 21 日
1
郑州轻工业学院本科
数据结构课程设计总结报告
设计题目:电话号码查询系统
学生姓名:王平
系 别:计算机科学与通信工程学院
专 业:计算机科学与技术
班 级:10-01
学 号:541007010141
指导教师:卢冰、李晔
2012 年 6 月 21 日
2
设计题目
题目:电话号码查询系统
每个记录有下列数据项:电话号码、用户名、地址;从键盘
输入各记录,分别以电话号码和用户名为关键字设计哈希表;采
用不同的哈希函数,比较冲突率;采用适当的方法解决冲突;在
哈希函数确定的前提下,尝试不同类型处理冲突的方法,考察平
均查找长度的变化;查找并显示给定电话号码的记录;查找并显
示给定用户名的记录。
运行环境(软、硬件环境)
Vc6.0
算法设计的思想
电话号码查询系统主要是考察我们对哈希查找的掌握。题目
要求用电话号码和姓名两种方式查找;第一大部份是用电话号码
查找,第二部分是用姓名查找。
1:电话号码查找(先建立哈希表读入数据,然后再处理冲突,
查找):在这部分中,我用了除留取余法和数字分析法设计的哈希
表,用的是开放定址法进行的冲突处理。除留取余法思想:取关
键字被某个不大于哈希表表长的数p 除后所得余数为哈希地址即:
H(key)=key%p 。数字分析法:已知关键字是以 r 为基础的数,哈
希表中出现的关键字是事先知道的,选择关键字是候,我们应该
尽量避免冲突。开放地址法:开放地址法主要公式;H=(H+di)%m,di
的取法有三种,但是我的程序中只用到了线性探测在散列,本可
以用再哈希函数解决冲突的,但是考虑到再哈希函数会增加计算
时间,所以就没用。
2 :姓名查找(先建立哈希表读入数据,然后再处理冲突,查
3
找)方式:这个过程中,我选取了数字分析法,解释如上。
主菜单的设计在设计效果上已经显示,不过多说明。
算法的流程
建立主菜单
电 姓 输
话 名 入
号 查 错
码 询 误
查 重
询
文档评论(0)