什么是哈希表的二次探测法?
例如:为什么啊?
设哈希表长为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是对的