散列表 哈希表Word文件下载.docx
- 文档编号:17343288
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:9
- 大小:16.75KB
散列表 哈希表Word文件下载.docx
《散列表 哈希表Word文件下载.docx》由会员分享,可在线阅读,更多相关《散列表 哈希表Word文件下载.docx(9页珍藏版)》请在冰豆网上搜索。
hlist[i].py="
hlist[i].k=0;
hlist[i].si=0;
};
for(i=0;
N;
{sum=0;
adr=(oldlist[i].k)%M;
d=adr;
if(hlist[adr].si==0)
{hlist[adr].k=oldlist[i].k;
hlist[adr].name=oldlist[i].name;
hlist[adr].py=oldlist[i].py;
hlist[adr].si=1;
}
else
{do
{d=(d+((oldlist[i].k))%10+1)%M;
/*伪随机*/
sum=sum+1;
while(hlist[d].k!
=0);
hlist[d].k=oldlist[i].k;
hlist[d].name=oldlist[i].name;
hlist[d].py=oldlist[i].py;
hlist[d].si=sum+1;
}
/***************************************/
voidfindhlist()
{ints0;
charr,g;
clrscr();
/*清屏*/
for(r=0;
r<
20;
r++){z[r]=0;
gotoxy(1,1);
printf("
查找:
copyrightby姚建飞2003.6"
);
gotoxy(5,10);
请拼音后回车!
gotoxy(5,12);
scanf("
%s"
z);
s0=0;
r++){s0=z[r]+s0;
gotoxy(5,13);
printf("
%d"
s0);
/*for(i=0;
i++)*/
sum=1;
adr=s0%M;
if(hlist[adr].k==s0)
{
gotoxy(18,18);
"
hlist[d].name);
gotoxy(18,19);
hlist[d].py);
gotoxy(18,20);
搜索%d次"
sum);
getch();
{if(hlist[adr].k==0)
{gotoxy(18,18);
无记录!
{g=0;
g==0;
{d=(d+s0%10+1)%M;
/*伪随机*/
if(hlist[d].k==0)
g=1;
getch();
if(hlist[d].k==s0)
{g=1;
gotoxy(18,21);
搜索%d次成功!
voidinp()/*输入表*/
{
char*f;
intr,s0;
oldlist[0].name="
桂芳芳"
oldlist[0].py="
guifanfan"
oldlist[1].name="
姚建飞"
oldlist[1].py="
yaojianfei"
oldlist[2].name="
杨扬"
oldlist[2].py="
yangyang"
oldlist[3].name="
朱玉环"
oldlist[3].py="
zhuyuhuang"
oldlist[5].name="
陈曦"
oldlist[5].py="
chenxi"
oldlist[6].name="
张雷"
oldlist[6].py="
zhanglei"
oldlist[7].name="
盛永海"
oldlist[7].py="
shenyonghai"
oldlist[8].name="
陈道全"
oldlist[8].py="
chengdaoquan"
oldlist[9].name="
陆道清"
oldlist[9].py="
ludaoqing"
oldlist[10].name="
龚云祥"
oldlist[10].py="
gongyunxiang"
oldlist[11].name="
孙振兴"
oldlist[11].py="
sunzhenxing"
oldlist[12].name="
孙容飞"
oldlist[12].py="
sunrongfei"
oldlist[13].name="
孙明龙"
oldlist[13].py="
sunminglong"
oldlist[14].name="
张浩"
oldlist[14].py="
zhanghao"
oldlist[15].name="
田苗"
oldlist[15].py="
tianmiao"
oldlist[16].name="
姚建中"
oldlist[16].py="
yaojianzhong"
oldlist[17].name="
姚建清"
oldlist[17].py="
yaojianqing"
oldlist[18].name="
姚建华"
oldlist[18].py="
yaojianhua"
oldlist[19].name="
张海峰"
oldlist[19].py="
yaohaifeng"
oldlist[20].name="
陈言号"
oldlist[20].py="
chengyanhao"
oldlist[21].name="
姚秋锋"
oldlist[21].py="
yaoqiufeng"
oldlist[22].name="
钱鹏程"
oldlist[22].py="
qianpengcheng"
oldlist[23].name="
姚海峰"
oldlist[23].py="
oldlist[24].name="
卞艳"
oldlist[24].py="
bianyan"
oldlist[25].name="
凌蕾"
oldlist[25].py="
linglei"
oldlist[26].name="
李伟"
oldlist[26].py="
liwei"
oldlist[27].name="
黄海燕"
oldlist[27].py="
huanhaiyan"
oldlist[28].name="
刘殿琴"
oldlist[28].py="
liudianqin"
oldlist[29].name="
李云"
oldlist[29].py="
liyun"
/*
请在此输入数据,同时修改程序开头的M LN
*/
for(i=0;
f=oldlist[i].py;
*(f+r)!
='
\0'
r++){s0=*(f+r)+s0;
oldlist[i].k=s0;
/****************************************/
voiddhash()/*显示哈希表*/
{charLON=17;
if(LON>
L){LON=L;
哈希表:
gotoxy(1,2);
地址:
for(i=0;
LON;
{gotoxy(1,i+3);
%-3d"
i);
gotoxy(9,2);
关键字:
{gotoxy(10,i+3);
%-6d"
hlist[i].k);
gotoxy(19,2);
姓名:
{gotoxy(19,3+i);
hlist[i].name);
gotoxy(28,2);
拼音:
{gotoxy(28,i+3);
hlist[i].py);
gotoxy(40,2);
搜索长度:
{gotoxy(43,i+3);
%2d"
hlist[i].si);
gotoxy(53,2);
H(key):
{gotoxy(53,i+3);
(hlist[i].k)%M);
average=0;
{average=average+hlist[i].si;
average=average/N;
gotoxy(10,23);
平均搜索长度:
ASL(%d)=%f"
N,average);
gotoxy(20,24);
任意键下一屏!
ch1=getch();
if(L>
15)
L-15){LON=L-15;
i+15);
hlist[i+15].k);
hlist[i+15].name);
hlist[i+15].py);
hlist[i+15].si);
(hlist[i+15].k)%M);
30)
L-30){LON=L-30;
i+30);
hlist[i+30].k);
hlist[i+30].name);
hlist[i+30].py);
hlist[i+30].si);
(hlist[i+30].k)%M);
45)
L-45){LON=L-45;
i+45);
hlist[i+45].k);
hlist[i+45].name);
hlist[i+45].py);
hlist[i+45].si);
(hlist[i+45].k)%M);
任意键返回!
/**************************************/
voidmain()
{inp();
/*输入原表*/
chash();
/*建哈希表*/
a:
gotoxy(21,2);
textcolor(GREEN);
cprintf("
欢迎使用本程序------------编者:
\n"
gotoxy(22,4);
1.显示哈希表"
gotoxy(22,6);
2.查找"
gotoxy(22,8);
x.退出"
gotoxy(22,12);
请输入选择:
gotoxy(24,14);
if(ch1==0x78){textcolor(GREEN);
谢谢使用本程序,你已经退出本程序!
exit();
/*"
x"
:
退出*/
if(ch1==0x31){dhash();
/*表的属性*/
if(ch1==0x32){findhlist();
/*查找*/
gotoa;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 散列表 哈希表 列表