读书人

什么是哈希表的二次探测法?该如何处理

发布时间: 2012-03-15 11:50:38 作者: rapoo

什么是哈希表的二次探测法?

例如:为什么啊?

设哈希表长为14,哈希函数H(key)=key%11,表中已有数据的关键字为15,38,61,84,四个,现将关键字为49的结点加到表中,用二次探测再散列法解决冲突,则放入的位置是( )。
A.8 B.3 C.5 D.9




[解决办法]
处理冲突的方法:

1、开放定址法

Hi=(H(key)+di) MOD m i=1,2,...,k(k<=m-1)

其中m为表长,di为增量序列

如果di值可能为1,2,3,...m-1,称线性探测再散列。

如果di取值可能为1,-1,2,-2,4,-4,9,-9,16,-16,...k*k,-k*k(k<=m/2)

称二次探测再散列。




更正一下:

上面得出的答案 A.8 用的是线性探测再散列。

如果用二次探测再散列,答案应该是 B.3。

[解决办法]
9是对的

读书人网 >软件架构设计

热点推荐