散列函数的构造
直接定址法
除留余数法
数字分析法
平方取中法
折叠法(分段叠加法)
冲突处理方法
开放定址法
链地址法
建立公共溢出区
散列表:采用散列技术将记录存储在一块连续的存储空间中,这块连续的存储空间称为散列表。
散列函数:将关键码映射为散列表中适当存储位置的函数。
散列地址:由散列函数所得的存储位置址 。
散列技术的关键问题:
⑴ 散列函数的设计。如何设计一个简单、均匀、存储利用率高的散列函数。
⑵ 冲突的处理。如何采取合适的处理冲突方法来解决冲突。
散列函数
直接定址法
除留余数法
数字分析法
平方取中
折叠法
冲突的 处理
开散列方法( open hashing,也称为拉链法,separate chaining ,链地址法)
闭散列方法( closed hashing,也称为开地址方法,open addressing ,开放定址法)
建立公共溢出区
线性探测法散列表
假设给定的值为K,根据所设定的散列函数h,计算出散列地址h (K)
否则将该地址中的值与K比较,若相等则检索成功,算法结束
否则,按建表时设定的处理冲突方法查找探查序列的下一个地址,如此反复下去
直到某个地址空间未被占用(查找不成功,可以插入),算法结束
或者关键码比较相等
散列表的查找技术
最新推荐文章于 2022-11-07 15:53:51 发布
本文深入探讨了散列技术,包括散列函数的构造方法如直接定址法、除留余数法等,以及冲突处理策略如开放定址法和链地址法。散列表通过散列函数将记录映射到存储位置,解决查找效率问题。文章还讨论了处理冲突的拉链法和公共溢出区方法,分析了它们的优缺点。
摘要由CSDN通过智能技术生成