哈希与信息收集技术全解析
哈希技术概述
哈希函数是一种将键值通过特定算法确定其存储位置的工具,它能把较大范围的键值映射到相对较小的地址空间。不过,这种映射过程中很容易出现冲突,也就是不同的键值可能会被映射到相同的地址,因此需要相应的解决策略。
常见哈希技术
- 折叠法 :以加法折叠且地址空间为四位数为例,对于键值 625149 可以通过特定方式得到哈希地址。折叠法的优缺点和中平方法类似。在某个特定数据集上,折叠法能更优雅地将键值分布在地址空间,而中平方法则能更随机地分布键值,但这只是简单实验,不能据此判断它们在其他数据集上的表现。
- 截断法 :该方法会忽略键的一部分,将另一部分作为哈希地址。同样以地址空间为四位数和键值 625149 为例,能通过特定手段得到哈希地址。但截断法过于简单,在实际应用中可能会导致频繁的冲突,而且无法将键均匀地分布在地址空间。
- 处理字母数字键值 :很多情况下,键值是字母数字混合的,这时就需要将其转换为数字形式。有多种转换方法,常见的两种方法有相关总结,当然也可以自行创造转换方法。
冲突解决策略
- 线性探测 :当发生冲突时,会寻找离哈希地址最近的空位置来存储数据。如果到达表的末尾,允许进行回绕。随着数据不断插入表中,会形成连续占用的单元块,这就是主聚集现象。主聚集会增加冲突的可能性,并且后续插入数据时的探测长度会变长。
- 优点 </
超级会员免费看
订阅专栏 解锁全文

4540

被折叠的 条评论
为什么被折叠?



