第十四讲静态查找.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
查找 本章要求: ??本章要求掌握顺序表和有序表的查找方法,掌握查找效率的计算方法,熟练掌握二叉排序树的构造和查找方法,以及平衡二叉树的维护平衡的方法,掌握散列函数构造方法及冲突解决方案。 教学重点: ?????查找表的基本概念,折半查找法、二叉排序树的定义和查找算法,二叉平衡树的概念,查找算法在顺序存储表、有序表的实现,散列表的基本思想,各种散列表的组织、解决冲突的方法。 教学难点: ?????二叉排序树上的插入和删除算法,平衡树、 B 树的建立,平衡二叉树的旋转平衡算法,散列表上的有关算法。 查找 本章主要内容: 9.1 静态查找表-顺序查找、折半查找 9.2 动态 查找表-二叉排序树 9.3 哈希表 查找 基本概念: P214 查找表: 静态查找表: 动态查找表: 关键字: 次关键子: 查找: 查找成功: 查找不成功: 查找 基本概念: P214 查找表:用于查找的数据元素集合称为查找表,查找表由同一类型的数据元素(或记录)构成.由于集合中的数据元素之间存在着完全松散的关系,因此它是一种非常灵活的数据结构. 静态查找表:若只对查找表进行如下两种操作:(1)在查找表中查看某个特定的数据元素是否在查找表中,(2)检索某个特定元素的各种属性,则称这类查找表为静态查找表。静态查找表在查找过程中查找表本身不发生变化。对静态查找表进行的查找操作称为静态查找。 动态查找表:若在查找过程中可以将查找表中不存在的数据元素插入,或者从查找表中删除某个数据元素,则称这类查找表为动态查找表。动态查找表在查找过程中查找表可能会发生变化。对动态查找表进行的查找操作称为动态查找。 查找 关键字:是数据元素中的某个数据项。是能唯一标识数据元素(或记录)的关键字,即每个元素的关键字值互不相同,我们称这种关键字为主关键字; 次关键子:若查找表中某些元素的关键字值相同,称这种关键字为次关键字。例如,银行帐户中的帐号是主关键字,而姓名是次关键字。 学生学号是主关键字,姓名是次关键字. 查找:在数据元素集合中查找满足某种条件的数据元素的过程称为查找。最简单且最常用的查找条件是“关键字值等于某个给定值”. 查找成功、查找不成功:在查找表搜索关键字等于给定值的数据元素(或记录),若表中存在这样的记录,则称查找成功,此时的查找结果应给出找到记录的全部信息或指示找到记录的存储位置;若表中不存在关键字等于给定值的记录,则称查找不成功,此时查找的结果可以给出一个空记录或空指针。若按主关键字查找,查找结果是唯一的;若按次关键字查找,结果可能是多个记录,即结果可能不唯一。 查找 查找表的存储结构 查找表是一种非常灵活的数据结构,对于不同的存储结构,其查找方法不同。为了提高查找速度,有时会采用一些特殊的存储结构。本章将介绍以线性结构、树型结构及哈希表结构为存储结构的各种查找算法。 查找算法的评价指标: 查找成功:最少比较次数,最多比较次数, 平均比较次数 查找失败:最少比较次数,最多比较次数, 平均比较次数 查找算法的时间效率:查找过程的主要操作是关键字的比较,所以通常以“平均比较次数”来衡量查找算法的时间效率。 查找 9.1 静态查找表的查找 静态查找表的抽象数据类型:基本操作有创建表、撤消表、查找元素、访问查找元素的属性。 在静态查找中,我们主要介绍顺序表的查找、线性链表的查找、有序表的查找、静态树表的查找。 查找 9.1.1顺序表的查找 :p216 1.顺序查找的基本思想:顺序查找是一种最简单的查找方法。其基本思想是将查找表作为一个线性表,可以是顺序表,也可以是链表(与线性表的类型相同),依次用查找条件中给定的值与查找表中数据元素的关键字值进行比较,若某个记录的关键字值与给定值相等,则查找成功,返回该记录的存储位置,反之,若直到最后一个记录,其关键字值与给定值均不相等,则查找失败,返回查找失败标志。 2. 顺序表的顺序查找 ★静态查找表的顺序存贮结构:与线性表相似,只是对数据表只进行静态查找,不影响表的长度。 typedef struct { elemtype * elem; int length; }SSTable; 查找 9.1.1顺序表的查找 :p216 ★顺序表的基本操作:创建、撤消、查找、元素属性。 参考第一章线性表的操作思想。 创建静态表:void Create(SSTable T)(自己完成) { 确定表长,分配数据空间,把T.length个元素依次放在T. elem[1].. T

文档评论(0)

docinppt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档