A、散列函数应是简单的,能在较短的时间内计算出结果
B、散列函数的定义域应包括全部关键码值,值域必须在表范围之内
C、散列函数计算出来的地址应能均匀分布在整个地址空间中
D、装载因子必须限制在0.8以下
(1)在散列表中搜索具有指定关键码值的表项的函数。
(2)在散列表中删除具有指定关键码值的表项的函数。
(3)在散列表中插人具有指定关键码值的表项的函数,
(4)求搜索成功时的平均搜索长度的函数.
dr(61)=6、addr(84)=7.其余地址为空。如用二次探查法解决冲突,关键码值为49的散列地址是()。
A、8
B、3
C、5
D、9
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的最大素数。
A、1
B、5
C、9
D、40
(1)散列表的大小应该是多少?
(2)如果散列函数采用除留余数法,写出散列两数的定义;
(3)若已有的8个记录分别为(58,87,38,95,49,75,64,47),依次将它们存放到表中;
(4)计算搜索成功的平均搜索长度和搜索不成功的平均搜索长度。
A.哈希函数构造的越复杂越好,因为这样随机性好,冲突小
B.除留余数法是所有哈希函数中最好的
C.不存在特别好与坏的哈希函数,要视情况而定
D.若需在哈希表中删去一个元素,不管用何种方法解决冲突都只要简单地将该元素删去即可
A.给定M,很容易计算h
B.给定h,很容易计算M
C.给定M,不能计算h
D.给定h,不能计算M
E.给定M,要找到另一个输入串M'并满足H(M')=H(M)很难
设α是散列表的装载因子,则应用线性探查法解决冲突时的搜索成功的平均搜索长度和搜索不成功的平均搜索长度分别为:
请根据题意选择合用的公式。