chap008-查找.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chap008-查找

选择最小的ΔPi值 i=low; min= abs(sw[high]-sw[low]); dw = sw[high]+sw[low-1]; for (j=low+1; j=high; ++j) // if abs(dw-sw[j]-sw[j-1]) min) {  i = j; min = abs(dw-sw[j]-sw[j-1]);    } // if 3.二叉排序树的插入算法 根据动态查找表的定义,“插入”操作在查找不成功时才进行; 二、二叉平衡树 何谓“二叉平衡树”? 冲突的不可避免性, 有它一定的内因。 由于关键字的值域往往比哈希表的个数大得多,所以哈希函数是一种压缩映射, 碰撞是难免的。 例如, 存储100个学生记录, 尽管安排120个地址空间, 但由于学生名(假设不超过10个英文字母)的理论个数超过2610, 要找到一个哈希函数把100个任意的学生名映射成[0, 119]内的不同整数, 实际上是不可能的。 3.插入和删除的操作 类似于B-树进行,即必要时,也需要进行结点的“分裂”或“归并”。 50 96 15 50 62 78 96 71 78 84 89 96 56 62 20 26 43 50 3 8 15 sq root 五、键 树 1. 键树的结构特点 2. .双链树 3. Trie树 1. 键树的结构特点: ※ 关键字中的各个符号分布在从根结点到叶的路径上,叶结点内的符号为“结束”的标志符。因此,键树的深度和关键字集合的大小无关; ※ 键树被约定为是一棵有序树,即同一层中兄弟结点之间依所含符号自左至右有序,并约定结束符‘$’小于任何其它符号。 H A D $ S $ V E $ E $ R $ E $ I G H $ S $ 例如: 表示关键字集合 {HAD, HAS, HAVE, HE, HER, HERE, HIGH, HIS } 2. 双链树 — 以二叉链表作存储结构实现的键树 typedef enum { LEAF, BRANCH }NodeKind; // 两种结点:{叶子 和 分支} 结点结构: first symbol next 分支结点 infoptr symbol next 叶子结点 指向孩子结点 的指针 指向兄弟结点 的指针 指向记录 的指针 ? H ? A D $ HAD E $ R $ $ E S $ G H $ I ? ? ? ? ? ? ? ? HE HER HERE HIGH HIS … T ? 叶子结点 分支结点 含关键字 的记录 typedef struct DLTNode { char symbol; struct DLTNode *next; // 指向兄弟结点的指针 NodeKind kind; union { Record *infoptr; // 叶子结点内的记录指针 struct DLTNode *first; // 分支结点内的孩子链指针 } } DLTNode, *DLTree; // 双链树的类型 #define MAXKEYLEN 16 //关键字的最大长度 typedef struct { char ch[MAXKEYLEN]; // 关键字 int num; // 关键字长度 } KeysType; // 关键字类型 在双链树中查找记录的过程: 假设: T 为指向双链树根结点的指针, K.ch[0..K.num-1] 为待查关键字 (给定值)。 则查找过程中的基本操作为进行下列比较: K.ch[i] =? p-symbol 其中: p 指向双链树中某个结点, 0 ≤ i ≤ K.num-1 初始状态: p=T-first; i = 0; 若 ( p p-symbol == K.ch[i] iK.num-1) 则继续和给定值的下一位进行比较 p=p-first; i++; 若 ( p p-symbol != K.ch[i] ) 则继续在键树的同一层上进行查找 p=p-next; 若 ( p p-symbol==K.c

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档