- 位数大的时候可以分组然后求和
- 可以除余
- 随机数法
冲突处理:
- 开放地址
- 线性探测: 分散性不行
- 平方探测再散列: 可能很难找到
- 随机探测: 是一组随机数列,或者 双散列函数探测 相对效果好,但是计算量大
- 再哈希:设计 n 个不同的哈希函数,解决冲突的可能性更高
- 链地址法:将关键字发生冲突的记录记载同一个线性链表里,查找性能最优
- 公共溢出区:将和基本表中的关键字发生冲突的所有记录都存在溢出表中
哈希表查找:按照插入的算法查找,直到为空停止。同时要提供一个查找的冲突次数来为扩容判断
哈希表的平均查找长度是装填因子的函数,而不是数据规模的函数