散列表的性能分析

散列表的性能分析

通过选择合适的哈希函数,散列法的查找效率期望是常数O(1),它几乎与空间大小n无关!也适合于关键字直接比较计算量大的问题,它是以较小的a为前提,因此散列方法是一个空间换时间的概念,散列方法的存储对关键字是随机的,不便于顺序查找关键字,也不适合于范围查找,或最大值最小值查找

开放地址法:

1 平方探测时有定理得出,哈希表的大小为4k+3的素数时,平方探测能均匀的扫描全表(平方探测会造成二次聚集)

2 开放地址法应该使用懒删除

3 表大小应该为素数

4 线性探测会造成一次聚集

5 散列表示一个数组,存储效率高,随机查找

分离链表法:

1 散列表因为是顺序存储和链式存储的结合,链表部分的存储效率和查找效率都比较低

2 关键字删除不需要使用懒惰删除,直接删除即可

3 太大的装填因子a会造成查看效率的下降

 

a为装填因子

 

 

 

 具体笔记来自浙江大学《数据结构课程》

原文地址:https://www.cnblogs.com/qyx66/p/12184492.html