贵州民族学院数据结构课件 第十章.pptVIP

  • 0
  • 0
  • 约6.73千字
  • 约 48页
  • 2019-05-06 发布于广东
  • 举报
第十章 树目录 第十章 树目录 10.1 二叉排序树 10.2 最佳二叉排序树 10.3 平衡二叉排序树 10.1 二叉排序树 ?定义和性质: 定义: 若二叉树的每个结点都对应一个关键码,则二叉排序树定义为:或是一棵空树,或是具有如下性质的二叉树:对于二叉树中每一个结点, (1)若它的左子非空,则左子树上所有结点的关键码都小于该结点的关键码 (2)若它的右子树非空,则右子树上所有结点的关键码都大于该结点的关键码; 性质: 对二叉排序树按中序遍历所得到的中序序列是一个递增的有序序列 特点: 用非线性结构表示一个线性有序表 二叉排序树的删除 要删除的二叉排序树中的结点*p ,分三种情况: *p为叶子结点,只需修改*p双亲的指针 *p只有左子树或右子树 *p只有左子树,用*p的左孩子代替*p (1)(2) *p只有右子树,用*p的右孩子代替*p (3)(4) *p左、右子树均非空 沿*p左子树的根C找到右链尾S,将S的左子树变S的父结点Q的右子树,用S取代*p (5) 若C无右子树,用C取代*p (6) 10.2 最佳二叉排序树 前已述:同一关键码集合,将键值插入二叉排序树的次序不同,可构成不同形态的二叉排序树。 例如:对于键值集合key={12,24,37,40,55},可有如下两棵不同形态的二叉排序树 10.2最佳二叉排序树 对于有n个关键码的集合,可构造n!棵二叉排序树 把平均检索长度最小的二叉排序树称为最佳二叉排序树 从结构上看,除最下面一层可以不满外,最佳二叉排序树的其它各层都是充满的 具有n个结点的最佳二叉排序树的平均检索长度为O(log2n). 给定n个已排好序的键值,可用二分法构造最佳二叉排序树 10.2最佳二叉排序树 对给定已排序的n个键值序列,采用平分法构造最佳二叉排序树的方法: (1)若序列为空,则二叉排序树为空; (2)若序列中有n≥1个键值k1,k2,…..,kn ,令:m为不大于(n+1)/2的最大整数,所求的最佳二叉排序树是由键值为km 的根结点,左子树和右子树所组成,其中左子树和右子树分别是用平分法由k1,k2,…..,km-1 和km+1,km+2,…..,kn 构造而成的最佳二叉排序树 10.3 平衡二叉排序树(又称AVL树) 对于给定的关键码集合,可构造最佳二叉排序树 但最佳二叉排序树经多次插入和删除之后,容易变成不是最佳的二叉排序树,检索性能变坏 要动态地保持高的检索效率,可采用平衡二叉排序树 平衡二叉排序树的构造 基本思想: 在构造二叉排序树的过程中,每当插入一个结点时,首先检查是否因插入而破坏了树的平衡性 若是,则找出其中最小不平衡子树,在保持排序树特性的前提下,调整最小不平衡子树中各结点之间的连接关系, 以达到新的平衡 平衡二叉排序树的构造 最小不平衡子树:以离插入点最近、且平衡因子绝对值大于1的结点作根的子树 调整不平衡子树的规律 : LL型调整 LR型调整 RR型调整 RL型调整 END LL型调整 由于在A的左孩子(L)的左子树(L)上插入结点,使A的平衡因子由1变为2而失去平衡。 LL型调整 调整规则:将A的左孩子B提升为新的二叉树的根;将原来的根A连同其右子树γ向右下旋转,使其成为B的右子树;而B的右子树β则作为左子树接到A上。 LL型调整例 RR型调整 由于在A的右孩子(R)的右子树(R)上插入结点,使A的平衡因子由-1变为-2,从而失去平衡。 RR型调整 将A的右孩子B提升为新的二叉树的根;将原来的根A连同其左子树α向左下旋转,使其成为B的左子树;而B的原左子树β则作为右子树接到A上。 LR型调整 由于在A的左孩子(L)的右子树(R)上插入结点,使A的平衡因子由1变为2,从而失去平衡。 LR型调整 LR型调整规则:将A的LR孙子C提升为新的二叉树的根;原C的双亲B边同其左子树向左下旋转,使其成为新根C的左子树,而原C的左子树则成为B的右子树;原根A连同其右子树向右下旋转,使其成为新根C的右子树,而原C的右子树则成为A的左子树。 RL型调整 由于在A的右孩子(R)的左子树(L)上插入结点,使A的平衡因子由-1变为-2,从而失去平衡,其调整规则与LR型对称。 RL型调整 左改组(新插入结点出现在危机结点的左子树上进行的调整)的情况分析: 1、LL 情况:(LL:表示新插入结点在危机结点的左子树的左子树上) A B +1 h-1 0 +2 +1 h h-1 h-1 LL 改组 BL BR AR B A 0 h 0 h-1 h-1 BL BR AR 危机结点 改组前:高度为 h + 1 中序序列: A B BL BR AR 改组后:高度为 h + 1 中序序列: A B B

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档