1、 学学 号:号: 课课 程程 设设 计计 题题 目目 哈希表哈希表设计设计 学学 院院 计算机科学与技术计算机科学与技术 专专 业业 计算机科学与技术计算机科学与技术 班班 级级 姓姓 名名 指导教师指导教师 年 月 日 1 目目 录录 课程设计任务书课程设计任务书 1 1 1问题描述问题描述 . 3 1.1 问题描述 . 3 1.2 基本要求 . 3 1.3 测试数据 . 3 2.2.实现分析实现分析 3 3 3程序设计程序设计 . 4 3.1 存储结构设计 . 4 3.2 主要算法设计 . 4 3.2.1 程序主要函数原型及功能 4 3.2.2 各函数的实现 5 3.2.3 函数模块 9
2、3.2.4 程序流程图 9 4.4.调试报告调试报告 11 4.1 调试中的问题 . 11 4.2 对设计和编码的讨论和分析 . 11 5. 5. 程序运行结果程序运行结果 11 6.6.经验和体会经验和体会 . 13 6.1 感受和体会 . 13 6.2 对算法改进的想法 . 15 7.7.哈希表和源程序哈希表和源程序 15 7.1 哈希表 . 15 7.2 源程序 . 16 本科生课程设计成绩评定表本科生课程设计成绩评定表 . 20 2 课程设计任务书课程设计任务书 学生姓名:学生姓名: 专业班级:专业班级: 班班 指导教师:指导教师: 工作单位:工作单位: 计算机科学系计算机科学系 题题
3、 目目: : 哈希表设计 初始条件:初始条件: 针对某个集体(比如你所在的班级)中的“人名”设计一个哈希表,使得平均查找长度不超过 R, 完成相应的建表和查表程序。 假设人名为中国人姓名的汉语拼音形式。 待填入哈希表的人名共有 30 个, 取平均查找长度的上限 为 2。哈希函数用除留余数法构造,用伪随机探测再散列发处理冲突。 测试用例见题集 p166。 要求完成的主要任务要求完成的主要任务: : (包括课程设计工作量及其技术要求, 以及说明书撰写等具体要求) 课程设计报告按学校规定格式用 A4 纸打印(书写) ,并应包含如下内容: 1、 问题描述 简述题目要解决的问题是什么。 2、 设计 存储
4、结构设计、主要算法设计(用类 C 语言或用框图描述) 、测试用例设计; 3、 调试报告 调试过程中遇到的问题是如何解决的;对设计和编码的讨论和分析。 4、 经验和体会(包括对算法改进的设想) 5、 附源程序清单和运行结果。源程序要加注释。如果题目规定了测试数据,则运行结果要包含 这些测试数据和运行输出, 6、 设计报告、程序不得相互抄袭和拷贝;若有雷同,则所有雷同者成绩均为 0 分。 时间安排:时间安排: 1、第 19 周完成。 2、7 月 1 日 14:00 到计算中心检查程序、交课程设计报告、源程序(CD 盘) 。 指导教师签名:指导教师签名: 年年 月月 日日 系主任(或责任教师)签名:系主任(或责任教师)签名: 年年 月月 日日 3 课程设计报告书 1问题描述 1.1 问题描述 针对某个