散列表的性能分析
-
平均查找长度(ASL)用来度量散列表查找效率:成功、不成功
-
关键词的比较次数多少,取决于产生冲突的多少
影响产生冲突多少有以下三个因素:
- 散列函数是否均匀;
- 处理冲突二点方法;
- 散列表的装填因子 α \alpha α.
-
分析:不同冲突处理方法、装填因子对效率的影响
- 线性探测法的查找性能
- 平方探测法和双散列探测法的查找性能
- 期望探测次数与装填因子
α
\alpha
α的关系。
- 当装填因子 α ≤ 0.5 \alpha\leq 0.5 α≤0.5的时候,各种探测法的期望探测次数都不大,也比较接近。
- 合理的最大装填因子应不超过0.85
- 分离链接法的查找性能
- 当采用线性探测冲突解决策略时,非空且有空闲空间的散列表中无论有多少元素,不成功情况下的期望查找次数总是大于成功情况下的期望查找次数。