Hash表的长度为350。给你一个435行的数据文件。这个文件以一行以'-'开头的数据结束。
下面是Hash函数要求:
H=int(k) mod 350
int(k)=P*k+c //这后面没有读懂(c可能是统计string出现的次数吧)
其中
k=0为起始值
P是你自己选择的一个合适的素数
用动态链表处理碰撞问题。
你的程序须制定表中链表(应该是处理碰撞用的动态链表)长度来分析Hash表的效率。
你必须统计长度为0,1,2等等的链表的个数,并在程序中以简要的形式把它显示出来,
你在这个结果的基础上,可以了解到Hash表中是否出现过多的碰撞,从而改进的程序(应该是通过修改你给定的P值)
这个网站将给你一个有4小段检索字的数据文件http://www.staff.ncl.ac.uk/albert.koelmans/data.txt
你可以在你Hash表中检索这些单词,并了解这些检索字是否在你的Hash表中出现过
[此贴子已经被风中涟漪于2004-11-07 01:56:33编辑过]