哈希表之四查找及分析

哈希表查找和哈希表的构造过程基本一致,见下图

哈希表插入和查询的例子(先省略)

(1)哈希表虽然建立了关键字和记录的存储位置之间的映射关系,但是由于冲突,导致是一个多对一的映射,

所以,哈希表的查找效率是平均查找长度;

(2)查找过程中徐鹤给定值进行比较的关键字的个数取决于三个因素:哈希函数处理冲突的方法装填因子

(3)一般情况下,处理冲突方法相同的哈希表,其平均查找长度依赖于哈希表的装填因子。

哈希表装填因子的定义:

表示哈希表的装填程度,越小,发生冲突的可能性就越小;反之越大,表示已填入的记录越多,发生冲突的可能性越大,

则查找时需要比较的关键字个数越多。

长度m,已填入的个数为n,哈希表的平均查找长度是的函数,而不是n的函数,所以不管n多大,总可以选择一个合适的

装填因子来将平均查找长度限制在一个范围内部。

需要注意的是,如果在非链地址处理冲突的哈希表中删除一个记录,则需要在该记录的位置上填入一个特殊符号,

以免找不到它之后填入的同义词记录。

对于预先知道且规模不大的关键字集,尽可能找到不发生冲突的哈希函数。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值