哈希表设计.docVIP

  • 125
  • 0
  • 约5.92千字
  • 约 10页
  • 2016-08-21 发布于河南
  • 举报
哈希表设计

课程设计书 课程名称: 数据结构 设计题目: 哈希表设计 班 级: 计算机0607 学 号: 0120610340721 姓 名: 徐 鹏 指导教师: 杜 海 涛 课程设计任务书 学生姓名: 徐鹏 专业班级: 计算机0607 指导教师: 杜海涛 工作单位: 计算机科学系 题 目: 哈希表设计 初始条件: 针对某个集体(比如你所在的班级)中的“人名”设计一个哈希表,使得平均查找长度不超过R,完成相应的建表和查表程序。 假设人名为中国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2。哈希函数用除留余数法构造,用伪随机探测再散列发处理冲突。 测试用例见题集p166。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 课程设计报告按学校规定格式用A4纸打印(书写),并应包含如下内容: 1、 问题描述 简述题目要解决的问题是什么。 2、 设计 存储结构设计、主要算法设计(用类C语言或用框图描述)、测试用例设计; 3、 调试报告 调试过程中遇到的问题是如何解决的;对设计和编码的讨论和分析。 4、 经验和体会(包括对算法改进的设想) 5、 附源程序清单和运行结果。源程序要加注释。如果题目规定了测试数据,则运行结果要包含这些测试数据和运行输出, 6、 设计报告、程序不得相互抄袭和拷贝;若有雷同,则所有雷同者成绩均为0分。 时间安排: 1、第20周(7月7日至7月11日)完成。 2、7月11 日8:00到计算中心检查程序、交课程设计报告、源程序(CD盘)。 指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日 问题描述 1问题描述 针对某个集体(比如你所在的班级)中的“人名”设计一个哈希表,使得平均查找长度不超过R,完成相应的建表和查表程序。 2.基本要求 假设人名为中国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2。哈希函数用除留余数法构造,用伪随机探测再散列发处理冲突。 二 .设计 1 .存储结构设计 typedef struct { char *py; //名字的拼音 int k; //拼音所对应的整数 }NAME; typedef struct //哈希表 { char *py; //名字的拼音 int k; //拼音所对应的整数 int si; //查找长度 }HASH; 名字以拼音的形式够成字符串,将字符串的各个字符所对应的ASCII码相加,所得的整数做为哈希表的关键字 void InitNameList() { char *f; int r,s0,i; NameList[0].py=zengqinghui; NameList[1].py=mayuelong; NameList[2].py=chenzhicheng; NameList[3].py=sunpeng; NameList[4].py=wanghui; NameList[5].py=liqingbo; NameList[6].py=liujunpeng; NameList[7].py=jiangquanlei; NameList[8].py=xingzhengchuan; NameList[9].py=luzhaoqian; NameList[10].py=gaowenhu; NameList[11].py=zhuhaoyin; NameList[12].py=chenlili; NameList[13].py=wuyunyun; NameList[14].py=huangjuanxia; NameList[15].py=wangyan; NameList[16].py=zhoutao; NameList[17].py=jiangzhenyu; NameList[18].py=liuxiaolong; NameList[

文档评论(0)

1亿VIP精品文档

相关文档