数据结构知识框架【超详细】 (3)

设有n个d位数,每一位肯能有r种不同的符号,这r种不同的符号在各位上出现的频率不一定相同,可能在某些位上分布比较均匀,可将分布均匀的几位根据开散列的方式作为散列地址

散列冲突处理方法

闭散列法

一旦发生冲突,就去寻找下一个空的散列表地址,只要散列表足够大,空的散列地址总能知道

线性探查

插入时发现该位置的数据和要插入数据相等,不插入

产生冲突,依次查看其后的下一个桶,如果有空位置插入数据

二次探查

使用二次探查法,在表中寻找下一个空位置的公式是H(i)=(H0+i^2)%m,H(i)=(H0-i^2)%m

当表的长度为质数且转载因子不超过0.5时,新的表项一定能插入

双散列法

需要两个散列函数,当一个发生冲突时,利用下一个散列函数计算偏移量

载荷因子

a=填入表中的元素个数/散列表的长度

控制在0.7-0.8以下,超过0.8,查表时CPU缓存指数上升

开散列法

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpjxzf.html