第八章查找讲述.pptVIP

  • 31
  • 0
  • 约 89页
  • 2017-03-26 发布于湖北
  • 举报
通常用的处理冲突的方法有下列几种: 开放定址法 方法:当冲突发生时,形成一个探查序列;沿此序列逐个地址探查,直到找到一个空位置(开放的地址),将发生冲突的记录放到该地址中,即 Hi=(H(key)+di) MOD m,i=1,2,……k (k?m-1) 其中:H(key)——哈希函数,m——哈希表表长,di——增量序列 (1) H(38)=38 MOD 11=5 冲突 H1=(5+1) MOD 11=6 冲突 H2=(5+2) MOD 11=7 冲突 H3=(5+3) MOD 11=8 不冲突 (2) H(38)=38 MOD 11=5 冲突 H1=(5+12) MOD 11=6 冲突 H2=(5-12) MOD 11=4 不冲突 (3) H(38)=38 MOD 11=5,冲突,设伪随机数序列为9,则: H1=(5+9) MOD 11=3 不冲突 2、再哈希法 其中Rhi均是不同的哈希函数,即在同义词产生地址冲突时计算另一个哈希函数地址,直到冲突不再发生。这种方法不容易产生“聚集”,但增加了计算的时间。 其每个分量的初始状态都是空指针。凡哈希地址为i的记录都插入到头指针为chainHash[i]的链表中。在链表中的插入位置可以在表头或表尾;也可以在中间

文档评论(0)

1亿VIP精品文档

相关文档