C语言数据结构第07讲 查找.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文档。上传文档
查看更多
C语言数据结构第07讲 查找

实用数据结构基础 第8章 查找 第 8 章 查 找 知 识 点 查找的基本概念 静态查找的基本方法:顺序查找、二分查找和分块查找 二叉排序树查找 哈希函数和解决冲突的方法 难 点 二叉排序树查找 平衡树二叉树 要 求 熟练掌握以下内容: 三种基本查找方法的基本思想和算法 二叉排序树查找的基本思想和算法 散列函数的常用构造方法及解决冲突方法 了解以下内容: 平衡树及平衡树的调整 第 8 章 目录 8-1 查找的基本概念 8-2 静态查找表 8-3 动态查找表 8-4 哈 希 表 小结 实验8 查找子系统 习题8 8-1 查找的基本概念 8-2 静态查找表 静态查找表是数据元素的线性表,可以是基于数组的顺序存储或者以链表存储。 (1) 顺序存储结构定义 typedef struct { ElemType *elem; // 数组基址 int length; // 表长度 }S_TBL; (2) 链式存储结构结点定义 typedef struct NODE { ElemType elem; // 结点的值域 struct NODE *next; // 下一个结点指针域 }NodeType; 8-3 动态查找表 8-4 哈希表 (2)二次探测法(平方探测法) Hi=(Hash(key)±di) mod m 其中: Hash(key)为哈希函数 m为哈希表长度,m要求是某个4k+3的质数(k是整数) di 为增量序列 12,-12,22,-22,……,q2,-q2且q≤(m-1) ? 仍以上例用二次探测法处理冲突,建表如下: 0 1 2 3 4 5 6 7 8 9 10 (3)双哈希函数探测法 Hi=(Hash(key)+i*ReHash(key)) mod m (i=1,2,……,m-1) 其中:Hash(key),ReHash(key)是两个哈希函数, m为哈希表长度 双哈希函数探测法,先用第一个函数Hash(key)对关键字计算哈希地址,一旦产生地址冲突,再用第二个函数ReHash(key)确定移动的步长因子,最后,通过步长因子序列由探测函数寻找空的哈希地址。 比如,Hash(key)=a时产生地址冲突,就计算ReHash(key)=b,则探测的地址序列为: H1=(a+b) mod m, H2=(a+2b) mod m,……, Hm-1=(a+(m-1)b) mod m 2. 拉链法 设哈希函数得到的哈希地址域在区间[0,m-1]上,以每个哈希地址作为一个指针,指向一个链,即分配指针数组 ElemType *eptr[m];建立m个空链表,由哈希函数对关键字转换后,映射到同一哈希地址i的同义词均加入到*eptr[i]指向的链表中。 【例8-9】关键字序列为: 47,7,29,22,27,92,33,8,3,50,37,78,94,21, 哈希函数为: Hash(key)=key mod 11 用拉链法处理冲突,建表如图8-16。 小 结 实验8 查找子系统 习题8 *3.二叉排序树删除操作 若要在二叉排序树中删除一个结点,删除之后的二叉排序树仍要保持二叉排序树的特性,这就需要我们从三种情况进行考虑: (1)删除的结点是叶子结点 将其父结点与该结点相连接的指针设为NULL。如图8-6要删除结点11,则只需将其父结点9的右指针设为NULL。 图8-6 删除叶子结点示意图 16 11 25 28

文档评论(0)

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

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

1亿VIP精品文档

相关文档