线性探测再散列法是什么?

如题所述

线性探测再散列也称杂凑技术。是一种较快的查找技术。

线性探测再散列是哈希表解决冲突的一种计算方法,Hi=(H(key)+di)%m,i=1,2,……k(k<=m-1),H(key)哈希函数,m哈希表长,di增量序列当,di值可能为1,2,3,...m-1,称线性探测再散列,用该方法处理冲突的方法:开放寻址法、再散列法和链地址法(拉链法)。

解决冲突的方法一般有线性探测再散列法、随机探测法、再哈希法、链地址法等,其中线性再散列法较简单,其计算公式为:Hi=(H(K)+di)MOD p式中di=1,2,…

常用的哈希函数

1.直接定址法。仅适合于:地址集合的大小 == 关键字集合的大小。

2.数字分析法。对关键字进行分析,取关键字的若干位或其组合作哈希地址。仅适合于:能预先估计出全体关键字的每一位上各种数字出现的频度。

3.平方取中法。以关键字的平方值的中间几位作为存储地址。

4.折叠法。将关键字分割成位数相同的几部分,然后取这几部分的叠加和(舍去进位)做哈希地址。移位叠加/间界叠加。适合于: 关键字的数字位数特别多,且每一位上数字分布大致均匀情况。

5.除留余数法。取关键字被某个不大于哈希表表长m的数p除后所得余数作哈希地址,即H(key)=key%p,p<=m。

6.随机数法。取关键字的伪随机函数值作哈希地址,即H(key)=random(key),适于关键字长度不等的情况。

以上内容参考:线性探测再散列-学术百科-知网空间

温馨提示:答案为网友推荐,仅供参考
相似回答