电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

《数据结构》实验五哈希表

《数据结构》实验五哈希表_第1页
1/5
《数据结构》实验五哈希表_第2页
2/5
《数据结构》实验五哈希表_第3页
3/5
第 1 页共 6 页实验五查找一、实验目的(1)掌握哈希表的构造和查找过程及其算法设计;(2)掌握哈希表的平均查找长度的计算。二、实验内容编写程序,实现哈希表的相关运算,并完成以下功能:(1)建立关键字序列(16,74,60,43,54,90,46,31,29,88,77)对应的哈希表 A[0..12],哈希函数为 H(k)=k%13,并采用开放地址法中的线性探测法解决冲突。要求输出构造的哈希表。(2)在上述哈希表中查找关键字为 29 的记录,输出其位置和比较次数;(3)在上述哈希表中删除关键字为 77 的记录,再将其插入。(4)输出上述哈希表查找成功时的平均查找长度。三、设计思路及程序代码(包括程序结构(即函数调用关系)、算法功能描述或流程图、程序代码)#include#defineMaxSize100#defineNULLKEY-1#defineDELKEY-2typedefintKeyType;typedefchar*InfoType;typedefstruct{KeyTypekey;InfoTypedata;intcount;}HashData;typedefHashDataHashTable[MaxSize];voidInsertHT(HashTableha,int&n,KeyTypek,intp)/将关键字 k 插入到哈希表中{inti,adr;adr=k%p;if(ha[adr].key 二二 NULLKEY||ha[ad 门.key 二二 DELKEY)//xj 可以直接放在哈希表中{ha[adr].key=k;ha[adr].count=1;第 2 页共 6 页}else{i=1;do{adr=(adr+1)%p;i++;}while(ha[adr].key!=NULLKEY&&ha[adr].key!=DELKEY);ha[adr].key=k;ha[adr].count=i;}n++;}voidCreateHT(HashTableha,KeyTypex[],intn,intm,intp)//创建哈希表{inti,n1=0;for(i=0;i

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

《数据结构》实验五哈希表

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群