第9章查找55535(免费阅读).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文档。上传文档
查看更多
第 9 章 查 找 查找方法评价 查找速度 占用存储空间多少 算法本身复杂程度 平均查找长度ASL(Average Search Length):为确定记录在表中的位置,需和给定值进行比较的关键字的个数的期望值叫查找算法的平均查找长度 二、顺序表的查找 1.设表l长为n,low、high和mid分别指向待查元素所在区间的上界、下界和中点,k为给定值 折半查找算法实现 四、平衡二叉排序树 哈希查找过程 (3)LR型平衡旋转:由于在A的左孩子的右子树上插入新结点,使A的平衡度由1变成2,致使以A为根的子树失去平衡,如图9.9(c)所示。此时应进行两次旋转操作(先逆时针,后顺时针),即“提升”C(即A的左孩子的右孩子)为新子树的根结点;A下降为C的右孩子;B变为C的左孩子;C原来的左子树CL调整为B现在的右子树;C原来的右子树Cr调整为A现在的左子树 A 2 B -1 Ar h BL h LR型 C CL h-1 Cr h-1 1 A -1 B 0 Ar h BL h CL h-1 Cr h-1 C 0 图9.9 (c) (4)RL型平衡旋转:由于在A的右孩子的左子树上插入新结点,使A的平衡度由-1变成-2,致使以A为根的子树失去平衡,如图9.9(d)所示。此时应进行两旋转操作(先顺时针,后逆时针),即“提升”C(即A的右孩子的左孩子)为新子树的根结点;A下降C的左孩子;B变为C的右孩子;C原来的左子树CL调整为A现在的右子树;C原来的右子树Cr调整为B现在的左子树。 B -1 A 0 Br h AL h CL h-1 Cr h-1 C 0 A -2 B 1 Br h AL h RL型 CL h-1 Cr h-1 C 1 图9.9 (d) 综上所述,在平衡的二叉排序树t上插入一个新的数据元素x的算法可描述如下: (一)若AVL树t为空树,则插入一个数据元素为x的新结点作为t的根结点,树的深度增1; (二)若x的关键字和AVL树t的根结点的关键字相等,则不进行插入; (三)若x的关键字小于AVL树t的根结点的关键字,则将x插入在该树的左子树上,并且当插入之后的左子树深度增加1时,分别就下列不同情况进行分情形处理: (1)若AVL树的根结点的平衡因子为-1(右子树的深度大于左子树的深度),则将根结点的平衡因子调整为0,并且树的深度不变; (2)若AVL树的根结点的平衡因子为0(左、右子树的深度相等),则将根结点的平衡因子调整为1,树的深度同时增1; (3)若AVL树的根结点的平衡因子为1(左子树的深度大于右子树的深度),则当该树的左子树的根结点的平衡因子为1时需进行LL型平衡旋转;当该树的左子树的根结点的平衡因子为-1时需进行LR型平衡旋转。 (四)若x的关键字大于AVL树t的根结点的关键字,则将x插入在该树的右子树上,并且当插入之后的右子树深度增加1时,需要分别就不同情况进行处理。其处理操作和(三)中所述相对称 结点序列(120,80,30,90,45,60)逐个插入一棵空的AVL树的过程如下: 120 0 120 1 80 0 120 2 80 1 30 0 120 0 80 0 30 0 120 1 80 -1 30 0 90 0 120 1 80 0 30 -1 90 0 45 0 120 1 80 0 30 -2 90 0 45 -1 60 0 120 1 80 0 30 0 90 0 45 0 60 0 依次把结点值为60,40,30,150,130,50,90,80,96,25的记录插入到初始为空的平衡二叉排序树中,使得在每次插入后保持该树仍然是平衡查找树。请依次画出每次插入后所形成的平衡查找树。 §9.3 哈希表 一、哈希表的相关定义 哈希函数:在记录的关键字与记录的存储地址之间建立的一种对应关系。哈希函数是一种映象,是从关键字空间到存储地址空间的一种映象。 可写成,addr(ai)=H(ki) 其中:ai是表中的一个元素 addr(ai)是ai的存储地址 ki是ai的关键字 26 25 24 …… 3 2 1 z y x …… c b a 例: { 刘丽,刘宏英,吴进,吴小艳,李秋梅,陈伟 } 26 42 72 33 46 24 用所有首字母编号值相加求和 cw lqm wxy wj lhy ll 姓名中各字拼音首字母 陈伟 李秋梅 吴小艳 吴进 刘宏英 刘丽 …… …… 吴小艳 76 …… …… …… … …… …… …… … …… …… 刘宏英 46 …… …… …… … …… …… 李秋梅 42 …… …… …… … …… …… 吴进 33 …… ……

文档评论(0)

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

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

1亿VIP精品文档

相关文档