加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

【数据结构】4. 树与二叉树

发布时间:2021-03-31 18:08:55 所属栏目:安全 来源:网络整理
导读:目录 4.1 树的基本概念 4.1.1 树的定义 4.1.2 基本术语 4.1.3 树的性质 4.2 二叉树的概念 4.2.1 二叉树的定义及其主要特性 (1)二叉树的定义 (2)几个特殊的二叉树 (3)二叉树的性质 4.2.2 二叉树的存储结构 (1)顺序存储结构 (2)链式存储结构 4.3 二

因此,平衡二叉树可定义为它或者是一棵空树,或者是具有下列性质的二叉树:
它的左子树和右子树都是平衡二叉树,且左子树和右子树的高度差的绝对值不超过 1。
如图 4-24(a) 所示是平衡二叉树,图 4-24(b) 所示是不平衡的二叉树。
结点中的值为该结点的平衡因子。

【数据结构】4. 树与二叉树

(2)平衡二叉树的插入

二叉排序树保证平衡的基本思想:每当在二叉排序树中插入(或删除)一个结点时,首先要检査其插入路径上的结点是否因为此次操作而导致了不平衡。
如果导致了不平衡. 则先找到插入路径上离插入结点最近的平衡因子绝对值大于 1 的结点 A,再对以 A 为根的子树,在保持二叉排序树特性的前提下,调整各结点的位置关系,使之重新达到平衡。

注意:
每次调整的对象都是最小不平衡子树,即在插入路径上离插入结点最近的平衡因子的绝对值大于 1 的结点作为根的子树。如图 4-25 所示虚线框内为最小不平衡子树。

【数据结构】4. 树与二叉树

平衡二叉树的插入过程前半部分与二叉排序树相同,但是在新结点插入后,如果造成了査找路径上某个结点不再平衡,需要做出相应的调整。
一般可将失去平衡后进行调整的规律归纳为下列 4 种情况:

  1. (编辑:晋中站长网)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读