一次查找的长度:需要比较的关键字次数
平均查找长度ASL:所有查找过程中进行关键字的比较次数的平均值
缺点:当n较大时,平均查找长度较大,效率低
优点:顺序存储和链式存储都可以
ASL成功=(n+1)/2
ASL失败=n+1
ASL成功=(n+1)/2
ASL失败=n/2+n/(n+1)
仅适用于有序的顺序表
折半查找可以用判定树描述,判定树是一颗平衡二叉树
每次把一个数组从中间节点分割,总是把数组分为节点数相差最多不超过1的两个子数组
每个节点值均大于其左子节点值,且均小于右子节点值;
n个元素,n个非叶节点,n+1个叶节点
折半查找法查找到给定值的比较次数最多不会超过树的高度
ASL成功=(1/n)(11+2+2+…+h+2^(h-1))=log2(n+1)-1
h=log2(n+1)向上取整
时间复杂度O(log2n),比顺序查找效率高
仅适合顺序存储结构,不适合链式(需要方便的定位查找区域,要求线性表具有随机存取的特性)
块内元素可以无序,块之间是有序的
计算的ASL看书p275
7.2.4
二叉排序树的查找性能与数据的输入顺序有关,最好情况下的平均查找长度和折半查找相同,最坏情况是形成单支数,查找长度O(n)
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务