1. 常用哈希表的构造方法
(1)除余
(2)随机
(3)平方后取中间某几位
(4)折叠
(5)H(key)= a*key + b
(6)数字分析:若10位key的特定某几位中,数字大小分布均衡,就取那几位的
2. 处理冲突
(1)开放定址
(2)公共溢出
(3)多个哈希表
(4)链表
3. 性能分析
三个因素:
哈希函数,处理冲突的方法,哈希表的装填因子。
装填因子 a 的定义如下: a = 哈希表中元素的个数 / 哈希表的长度
a 可描述哈希表的装满程度。a 越小,发生冲突的可能性越小; a 越大 ,发生冲突的可能性越大。