目录
概述
散列过程
1.在存储时,通过散列函数计算记录的散列地址,并按此散列地址存储该记录。
2.当查找记录时,我们通过同样的散列函数计算记录的散列地址,按此散列地址访问该记录。
散列技术既是一种存储方法,也是一种查找方法。
散列函数构造方法
函数要求
直接定址法
数字分析法
平方取中法
折叠法
除留余数法
随机数法
解决冲突
开放定址法
1
我们把这种解决冲突的开放定址法称为线性探测法。
在解决冲突的时候,还会碰到如48和37这种本来都不是同义词却需要争夺一个地址的情况,我们称这种现象为堆积。
2
3
伪随机数是说,如果我们设置随机种子相同,则不断调用随机函数可以生成不会重复的数列,我们在查找时,用同样的随机种子,它每次得到的数列是相同的,相同的di当然可以得到相同的散列地址。
再散列函数法
链地址法
公共溢出法