此题为判断题(对,错)。
(1)k1的探查序列:___30___,________,________,________,
(2)k2的探查序列:___28___,________,________,________,
(3)k3的探查序列:________,________,________,________,
(1)设计散列表的类。
(2)设计在散列表中搜索具有指定关键码值表项的算法.
(3)设计在散列表中册除具有指定关键码值表项的算法.
(4)设计在散列表中插人具有指定关键码值表项的算法。
(5)设计出一组关键码值建立散列表的算法。
(6)设计输出散列表的算法。
(7)求搜索成功时的平均搜紫长度的算法。
(8)求搜索不成功时的平均搜索长度的算法。
y为整数),这些函数能够当作散列函数吗(即对于插入和查找,散列程序能正常工作吗)?如果能够,它是一个好的散列函数吗?请说明理由。设函数random(m)返回一个0到m-1之间的随机整数(包括0与m-1在内)。
(1)Hash(key)==key/m;
(2)Hash(key)=1;
(3)IIash(key)==(key+random(m))%rn;
(4)Hash(key)=key%p(m);其中p(m)是不大于m的最大素数。
设散列表为,即表的大小为m=13。现采用双散列法解决冲突。散列函数和再散列函数分别为:
其中,函数Rev(x)表示颠倒10进制数x的各位,如Rev(37)=73,Rev(7)一7等。若插入的关键码值序列为(2,8,31,20,70,59,25,28)。
(1)试画出插人这8个关键码值后的散列表。
(2)计算搜索成功的平均搜索长度。