- 1、本文档共135页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
平衡二叉排序树的插入左改组
第 六 章 查找 静态查找技术 静态查找表(ADT) 静态查找表(ADT) 静态查找表(ADT) 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找 顺序查找的性能 顺序查找的性能 折半查找(二分查找) 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找 折半查找的性能 折半查找的性能 折半查找的性能 折半查找的性能 折半查找的性能 折半查找的性能 差值查找 Fibonacci查找 Fibonacci查找 二叉排序树 二叉排序树(ADT) 二叉排序树的结点类 二叉排序树类 二叉排序树类 二叉排序树的查找 二叉排序树的查找分析 二叉排序树的查找分析 插入操作 插入操作 删除操作 删除操作 删除操作 删除操作 删除操作 删除操作 删除操作 删除操作的实现 删除操作的实现 顺序统计 顺序统计 顺序统计 平衡二叉排序树(AVL树) 平衡二叉排序树 平衡二叉排序树 平衡二叉排序树 平衡二叉排序树 平衡二叉排序树 平衡二叉排序树的插入 平衡二叉排序树的插入 平衡二叉排序树的插入 平衡二叉排序树的插入 平衡二叉排序树的插入 平衡二叉排序树的插入 平衡二叉排序树的查找分析 平衡二叉排序树的查找分析 平衡二叉排序树的查找分析 平衡二叉排序树的删除 平衡二叉排序树的删除 平衡二叉排序树的删除 平衡二叉排序树的删除 平衡二叉排序树的删除 平衡二叉排序树的删除 红黑树 红黑树的层数 红黑树的插入 红黑树的插入 红黑树的插入 红黑树的插入 红黑树的插入 红黑树的插入 例:红黑树的插入 红黑树的删除 红黑树的删除 红黑树的删除 例:红黑树的删除 例:红黑树的删除 例:红黑树的删除 例:红黑树的删除 例:红黑树的删除 B-树和B+树 B-树 例:B-树 B-树的查找 B-树的查找 B-树的插入 B-树的插入 例:B-树的插入 B-树的删除 例:B-树的删除 B+树 例:B+树 B+树的应用:VSAM B+树的应用:VSAM B+树的插入 B+树的应用:VSAM B+树的应用:VSAM 哈希(Hash)方法 Hash方法 常用Hash函数 常用Hash函数 解决冲突:线性探测 线性探测 解决冲突:二次探测 解决冲突 解决冲突 Hash表查找分析 Hash表查找分析 Hash表的实现 Hash表的实现 Hash表的实现 Hash表的实现 Hash表的实现 在一般情况下:N = f(h+2) - 1 而 f(h+2) αh+2 / sqr(5) - 1 所以,N αh+2 / sqr(5) - 2 根据上式可求出:h = 1.44log2(N+1) - 0.328 注意: f(h+2) - 1 是构造高为 h 的平衡树最少的结点数。所以,N αh+2 / sqr(5) - 2。 危机结点和新插入的结点之间的平衡度原为 0 ,这一点,可以通过反证法加以证明。如在 LL 情况下,危机结点的平衡度力图从 +1 改变为 +2。假定:危机结点和新插入的结点之 间的平衡度原不为 0 ,如设图中的结点 5 的平衡度原为 +1,那么结点 5 将为危机结点。如 设图中的结点 5 的平衡度原为 -1,那么结点 5 的平衡度将改变为 0,不会导致结点结点 9 力图成为危机结点(因为结点 9 的左子树的树高在新结点插入前后没有变化)。所以,结 点 5 的平衡度原为 +1 或 -1 都是和结点 9 是危机结点相矛盾。 C、将溢出结点存放到散列表以外的一个线性表中去。 将发生冲突的结点都存放在一个公共溢出区内。通常用于组织存在于外存设 备上的数据文件。M 存区只存放一个记录。发生冲突的记录都存放在公共溢 出区内。M 存区和公共溢出区都可以分配几个磁道或柱面作为存储空间。 0 1 2 3 4 5 6 7 8 9 10 ∧ ∧ ∧ ∧ ∧ ∧ ∧ ∧ ∧ K1 K2 K3 K4 K5 ∧ ∧ ∧ ∧ ∧ ∧ ∧ ∧ K2 K3 K5 K6 基本区(M 存区) 公共溢出区 K7 ∧ n+1 i=1 其中:q i = 经过 i 次探测确定某结点不在 hashing 表中的概率。 = 第一到第 i-1 次探测,由于冲突而失败的概率及第 i 次探测找到空单元的概率。 = × × × …... 1 m n-1 m-1 m-2 n-2 n-i+2 m-i+2 n-(i-1)
文档评论(0)