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

陈越《数据结构》第四讲 树(中)

发布时间:2020-12-15 06:08:15 所属栏目:安全 来源:网络整理
导读:4.1 二叉搜索树 4.1.1 定义与抽象数据类型的基本操作 1. 定 义 : 一棵二叉树,可以为 空 ;如果不为空,满足以下性质: 1. 非空 左子树 的所有 键值小于其根结点 的键值。 2. 非空 右子树 的所有 键值大于其根结点 的键值。 3. 左、右子树都是二叉搜索树 。

4.1 二叉搜索树

4.1.1 定义与抽象数据类型的基本操作

1.

一棵二叉树,可以为;如果不为空,满足以下性质:
1. 非空 左子树 的所有 键值小于其根结点 的键值。
2. 非空 右子树 的所有 键值大于其根结点 的键值。
3. 左、右子树都是二叉搜索树 。

2.

查找:
1.1. Position Find( ElementType X,BinTree BST ) :从二叉搜索树BST中查找元素X ,返回其所在结点的地址;
1.2. Position FindMin( BinTree BST ) :从二叉搜索树BST 中查找并返回最小元素所在结点的地址;
1.3. Position FindMax( BinTree BST ) :从二叉搜索树BST 中查找并返回最大元素所在结点的地址。

注:
1.
2. 查找效率与树的高度有关!


插入与删除
1. BinTree Insert( ElementType X,BinTree BST )
2. BinTree Delete( ElementType X,BinTree BST )

1. 插入和删除有三种情况:
- 没有左儿子和右儿子;
- 只有左儿子或者右儿子;
- 既有左儿子又有右儿子(选取右子树中最小的那个)。

4.2 平衡二叉树


4.2.1 定义和特点

1.

平衡因子定义
(Balance Factor,简称BF): BF(T)=hL?hR 其中 hL hR 分别为 T 左、右子树的高度


平衡二叉树的定义
(Balanced Binary Tree)(AVL):
空树,或者任一结点左、右子树高度差的绝对值不超过1 ,即 |BF(T)|1

2.


4.2.2 平衡二叉树的调整


整体思路:
RRLRLLRL

  1. RR

  2. LL

  3. LR

  4. RL


4.3

(编辑:李大同)

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

    推荐文章
      热点阅读