数据结构 第九章查找

本文详细介绍了查找算法,包括顺序查找和折半查找的原理、性能分析以及优化措施。重点讲解了折半查找的判定树概念,以及二叉排序树的查找、插入和删除操作。还探讨了哈希函数的构造和解决冲突的方法,如开放地址法和链地址法,强调了平均查找长度ASL与装填因子的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第九章 查找

知识点
  1. 熟练掌握顺序表和有序表(折半查找)的查找算法及其性能分析方法;

    1. 顺序查找的性能分析

      1. 空间复杂度:一个辅助空间。

      2. 时间复杂度:

        • 查找成功时的平均查找长度

          • 设表中各记录查找概率相等
          • ASLs(n)=(1+2+ … +n)/n =(n+1)/2
        • 查找不成功时的平均查找长度 ASLf =n+1

      3. 特点

        1. 算法简单,对表结构无任何要求(顺序和链式)n很大时查找效率较低
        2. 改进措施:非等概率查找时,可按照查找概率进行排序。
    2. 折半查找(又称二分查找或对分查找)

      1. 先给数据排序(例如按升序排好),形成有序表,然后再将k与正中元素的key相比,若k小,则缩小至左半部内查找, 若k大则缩小至右半部内查找;再取其中值比较,每次缩小1/2的范围,直到查找成功或失败为止。

      2. 算法分析

        1. 查找时每经过一次比较,查找范围就缩小一半,该过程可用一棵二叉树表示:

          1. 根结点就是第一次进行比较的中间位置的记录ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值