0半岛体育- 半岛体育官方网站- APP下载2第9章查找第9讲哈希表冲突解决方法
2026-02-27半岛,半岛体育,半岛体育app,半岛官网,半岛电竞,半岛真人,半岛棋牌,半岛体育官网注册,半岛体育官方app下载,半岛体育app下载,半岛体育怎么样,半岛体育官网,半岛体育登录入口,半岛体育官方网站
在哈希表中,虽然冲突很难避免,但发生冲突的可能性有大有小。这主要与三个因素有关,与装填因子有关。所谓装填因子α是指哈希表中已存的元素数n与哈希地址空间大小m的比值,即α=n/m。越小,冲突的可能性就越小,但α越小,存储空间的用率就越低。与所采用的哈希函数有关。与解决冲突的方法有关。处理冲突就是为发生冲突的DU-LZR关键字的记录找到另一个“空”的哈希地址。
基本方法,当冲突发生时,形成某个探测序列,按此序列逐探测散列表中的其他地址,直到找到给定的关键字或一个地址(开放的地址)为止,将发生冲突的记录放到该地址中。列地址的计算公式是,LZRHi(key)=(H(key)+di)MODm,i=1(2)…,k(k,m-1)其中,H(key),哈希函数(m)散列表长度(di)第i次探测时的增量序列,DU-,Hi(key),经第i次探测后得到的散列地址。
,优点,只要散列表未满,总能找到一个不冲突的散列地址,缺点,每个产生冲突的记录被散列到离冲突最近的空地上,从而又增加了更多的冲突机会(这种现象称为冲ZR突的“二次聚集”)。DU-
缺点是不能探测到哈希表上的所有单元,但至少能探测一半单元。LZRQDU-
►链地址法,将所有关键字为同义词(哈希地址相同)的记录储在一个单链表中,并用一维数组存放链表的头指针。在这种方法中,哈希表每个单元中存放的不再是记录本身,ZR而是相应同义词单链表的头指针。由于单链表中可插入任意多个结点,所以此时装填因子α据同义词的多少既可以设定为大于1,也可以设定为小或等于1,通常取α=1。DU-
【示例-3】 将关键字序列(7(8)30(11)18(9)14)散列存储到散列表中,散列表的存储空间是一个下标从0开始的一维数组,散列函数为,(key)=(key×3) mod 7,处理冲突采用线性探测再散列法,要求装,载, 因子为0.7。1,请画出所构造的散列表。2,分别计算等概率情况下,查找成功和查找不成功的平均查找度。 说明,本题为2010年全国考研题。DU-LZR 解, (1) n=7, α=0.7=n/m, 则m=n/0.7=10。计算各关键字存储地址的过程如下,
平均情况下的平均查找长度,决冲突的方法 平均查找长度ASL功的查找 不成功的查找性探测法方探测法地址法 ) 11 , )1 ) 1 2og , , e α 1 , , ,, ,虑所有顺序构造哈希表的平均情况DU-LZR


