Hash算法相关

可紊 提交于 2019-11-29 04:57:05

一、散列

散列方法的主要思想是根据结点的关键码值来确定其存储地址:以关键码值K为自变量,通过一定的函数关系h(K)(称为散列函数),计算出对应的函数值来,把这个值解释为结点的存储地址,将结点存入到此存储单元中。检索时,用同样的方法计算地址,然后到相应的单元里去取要找的结点。通过散列方法可以对结点进行快速检索。

按散列存储方式构造的存储结构称为散列表。散列技术的核心是散列函数。散列的核心就是:由散列函数决定关键码值(X.key)与散列地址h(X.key)之间的对应关系,通过这种关系来实现组织存储并进行检索。

二、散列函数

1、除余法

2、乘余取整法

3、平方取中法

4、数字分析法

5、基数转换法

6、折叠法

三、冲突解决

1、分离链表法

2、开放地址法

  • 线性探测法
  • 二次探查法
  • 随机探查法
  • 双散列探查法
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!