考研数据结构考点之查找 第七章 查找 7.1 顺序查找7.2 折半查找7.3 分块查找7.4 二叉排序树7.5 平衡二叉树7.6 B树7.7 B+树7.8 散列查找7.9 折半查找、二叉排序树、平衡二叉树对比7.10 T(n)对比分析 7.1 顺序查找 顺序查找又称线性查找 优点:对数据素的存储没有要求,顺序存储或链式存储皆可;对表中记录的有序性也没有要求,无论关键字是否有序,均可应用。 缺点:当n比较大时,平均查找长度较大,效率低 注意!!!对线性的链表只能进行顺序查找算法的时间复杂度计算是通过计算算法的平均查找长度(ASL)得来的,取T(n)=ASL的数量级 ASL又分为查找成功与查找失败两种情况下的ASL. 7.2 折半查找 折半查找又称二分查找。对折半查找而言,画出判定树的结构,知道每个数据素在判定树中的位置。很重要!折半查找的判定树是一颗二叉排序树、也是平衡二叉树平衡二叉树的性质: 右子树节点数-左子树节点数=0或1素个数为n时,判定树高h=log2(n+1)(向上取整,不包括失败结点) 若序列有n个素,则对应判定树有n个圆形的非叶节点,有n+1个叶节点(n个结点的二叉链表有n+1个空链域)只适用于顺序存储,不适合于链式存储算法的时间复杂度计算是通过计算算法的平均查找长度(ASL)得来的,取T(n)=ASL的数量级 ASL又分为查找成功与查找失败两种情况下的ASL. 7.3 分块查找 分块查找一般只考选择题,会手动分析就可以了! 分块查找又称索引顺序查找,吸取了顺序查找和折半查找各自的优点 特点:块内无序,块间有序 ①索引表可采取顺序查找或折半查找 ②查找表采取顺序查找 当采用折半查找的方式查找索引表时: 若索引表中不包含目标关键字,则折半查找索引表最终停在low>high,要在low所指的分块中查找若最终的low超出索引表范围,则查找失败注意上述结论是在索引表按照升序排列时得出的 7.4 二叉排序树 二叉排序树又称二叉查找树,是一颗空树或者具有如下性质的非空二叉树: 左子树节点值<根结点值<右子树结点值 二叉排序树的构造: ● 以关键字序列中的第一个素为根节点 ● 按照二叉排序树的插入算法添加结点,新插入的结点一定是根节点 ● 不同的关键字序列可能得到同款二叉排序树 ● 不同的关键字序列也可能得到不同款二叉排序树 7.5 平衡二叉树 平衡二叉树又称为AVL树。简称为平衡树 树上任一结点的左子树和右子树高度之差不超过1 结点的平衡因子=左子树高度-右子树高度 平衡二叉树结点的平衡因子只能为0、1或-1 






2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/31741.html
