哈希表的平均查找长度_数据结构系列查找

本文探讨了哈希表的平均查找长度及其计算方法,解释了线性索引、二叉排序树和哈希结构的检索机制。通过公式和实例分析,展示了如何在等概率下确保查找成功的平均查找长度不超过3,查找不成功的平均查找长度不超过13。同时,文章还介绍了线性探测再散列和链地址法等处理冲突的方法。
摘要由CSDN通过智能技术生成

 查找--比较淡然的一章。

主要知识点

查找表的检索机制

平均查找长度

折半查找表

二叉排序树

哈希表

1 查找表的检索机制

本章给出了三种类型的查找表,

第一类是线性索引,记录关键字一般按序排列,以提高检索速度。对应检索采用基于比较检索方法。

第二类是树形检索,树形的典型结构是二叉排序树,其检索的时间复杂度与树的深度同级为对数函数,其对应的检索方法是基于树表式的检索,即将带查找的表组织成树,在树形结构上实现查找。

第三类是哈希结构,根据数据的”关键值”计算数据的存储地址,哈希表既是建立表,也是查找表的方法,其对应的检索方式是”计算式”的检索。

2 平均查找长度

为决定数据元素在列表中的位置,需和给定值进行比较的关键字个数的期望值,称为查找算法在查找成功时的平均查找长度。

计算平均查找长度的基本公式

    对于长度为n的列表,查找成功时的平均查找长度为:

         ASL=P1C1 + P2C2  +……+PnCn =∑ pici

    其中pi为查找列表中第i个数据元素的概率。Ci找到列表中第i二个数据元素时,已经进行过的关键字比较次数。

计算方法:

采用公式法计算(通用),也可采用手工计算方法(具体)。针对实际的具体问题计算相应的查找成功时的平均差查找长度。

3 折半查找表

    折半查找法要求查找表按照顺序存储结构且按关键字有序排列。

    折半查找过程中借助于折半判定树加以描述。判定树中每一结点对应表中一个记录在表中的位置序号。

    折半查找算法的性能:在等概率时查找成功的平均查找长度与折半判定树的深度相关:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值