数据结构实验报告七查找.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
云南大学软件学院 数据结构实验报告 (本实验项目方案受 “教育部人才培养模式创新实验区 ( X3108005 )”项目资助) 实验难度: A□ B □ C □ 序号 学号 姓名 成绩 1 2 3 指导教师 (签名) 学 期: 2010 秋季学期 任课教师 : 实验题目 : 查找算法设计与实现 姓 名: 王 辉 学 号: 20091120154 电子邮件 : 完成提交时间: 2010 年 12 月 27 日 云南大学软件学院 2010 学年 秋季 学期 《数据结构实验》成绩考核表 学号: 姓名: 本人承担角色: 评分项目 评分指标 实验构思 1. 实验目的明确 10%) 实验内容理解透彻、对实验所涉及到的知识点分析到位 实验设计 1. 有对基本数据结构的抽象数据类 ( 15%) 型定义 2. 实验方案设计完整,数据结构、 算法选择合理 3.算法结构和程序功能模块之间逻 辑清晰、有相应的流程图 实验实现 1. 代码编写规范、风格统一、注释 ( 25%) 清楚易读 2. 程序运行正常,测试结果正确 3. 界面友好、易于操作、有较强的 容错性 实验报告撰写 1. 内容详实无缺漏,文字流畅、图 ( 10%) 表清楚 2. 实验结果分析客观、详细,实验 体会真实可信,对原实验方案的改 进和对实验内容的发散性思考 个人工作量 1. 个人完成工作量 30%) 个人技术水平 团队合作精神 实验运作 1. 有一定用户群 10%) 应用前景分析  分值 得分 5 5 5 5 5 5 15 5 5 5 15 10 5 5 5 综合得分: (满分 100 分) 指导教师: 年 月 日 (注:此表在难度为 C 时使用,每个成员一份。 ) (下面的内容由学生填写, 格式统一为,字体 : 楷体 , 行距 : 固定行距 18,字号 : 小四,个人报告按下面每一项的百分比打分。难度 A 满分 70 分,难度 B 满分 90 分) 一、【实验构思( Conceive)】(10%) 哈希表查找。 根据全年级学生的姓名, 构造一个哈希表, 选择适当的哈希函数和解决冲突的方 法,设计并实现插入、删除和查找算法。 熟悉各种查找算法的思想。 2、掌握查找的实现过程。 3、学会在不同情况下运用不同结构和算法求解问题。 把每个学生的信息放在结构体中: typedef struct //记录 { NA name; NA tel; NA add; }Record; void getin(Record* a)函数依次输入学生信息 人名折叠处理,先将用户名进行折叠处理折叠处理后的数,用除留余数法构造哈希函数 ,并返回模值。并采用二次探测再散列法解决冲突。 姓名以汉语拼音形式, 待填入哈希表的人名约 30 个,自行设计哈希函数, 用线性探测再散列法或链地址法处理冲突; 在查找的过程中给出比较的次数。完成按姓名查询的操作。将初始班级的通讯录信息存入文件。 二、【实验设计 ( Design) 】(20%) (本部分应包括:抽象数据类型的功能规格说明、主程序模块、各子程序模块的伪码 说明,主程序模块与各子程序模块间的调用关系) 抽象数据类型的功能规格说明和结构体: #includestdio.h #includestdlib.h #includestring #include windows.h #define MAXSIZE 20 //电话薄记录数量 #define MAX_SIZE 20 // 人名的最大长度 #define HASHSIZE 53 // 定义表长 #define SUCCESS 1 #define UNSUCCESS -1 #define LEN sizeof(HashTable) typedef int Status; typedef char NA[MAX_SIZE]; typedef struct // 记录 { NA name; NA tel; NA add; }Record; typedef struct // 哈希表 { Record *elem[HASHSIZE]; // 数据元素存储基址 int count; // 当前数据元素个数 int size; // 当前容量 }HashTable; 2 主函数与各子函数的调用关系:(通过 switch(num) 函数按不同功能要求分别调用相关函数 ) int main(int argc, char* argv[]){ system(color 61); int c,flag=1; HashTable *H; H=(HashTable*)malloc(LEN); for(int i=0;iHASHSIZE;i++) H-elem[i]=NULL; H-size=HASHSIZE; H-count=0;

文档评论(0)

159****5521 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档