数据结构B(java版)之第五章 树和二叉树


一、树及其抽象数据类型

1、树的定义

在这里插入图片描述

2、基本术语

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、二叉树

1、二叉树的定义及特点

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、二叉树的性质

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、二叉树的存储结构

1、二叉树的顺序存储(满二叉树、完全二叉树)

在这里插入图片描述
在这里插入图片描述

2、二叉树的链式存储

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、二叉树遍历

1. 二叉树遍历

在这里插入图片描述
在这里插入图片描述

(1)先序遍历

在这里插入图片描述

(2)中序遍历

在这里插入图片描述

(3)后序遍历

在这里插入图片描述
在这里插入图片描述

2. 用二叉树表示算术表达式

在这里插入图片描述

3. 遍历算法的分析

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 重要结论

在这里插入图片描述

5、二叉树的建立

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、二叉树遍历算法的应用

1. 计算二叉树结点总数

在这里插入图片描述

2. 计算二叉树叶子结点总数

在这里插入图片描述

3. 计算二叉树深度

在这里插入图片描述

三、线索二叉树

1、定义

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、遍历

1. 先序线索二叉树

在这里插入图片描述

2. 中序线索二叉树

在这里插入图片描述

3. 后序线索二叉树

在这里插入图片描述
在这里插入图片描述

四、树和森林

1、树的存储方式

1. 用双亲表示法来存储

在这里插入图片描述
在这里插入图片描述

2. 孩子链表表示法

在这里插入图片描述

3. 孩子兄弟表示法

在这里插入图片描述

在这里插入图片描述

2、树和森林与二叉树的转换

1. 树转为二叉树

在这里插入图片描述
在这里插入图片描述

2. 二叉树转换为树

在这里插入图片描述

3. 森林转换为二叉树

在这里插入图片描述
在这里插入图片描述

4. 二叉树转换为森林

在这里插入图片描述

3、树和森林的遍历

1. 树的遍历

在这里插入图片描述
在这里插入图片描述

2. 森林的遍历

(1)先序遍历

在这里插入图片描述

(2)中序遍历

在这里插入图片描述

在这里插入图片描述

五、Huffman树及其应用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、哈夫曼树的基本概念

在这里插入图片描述
在这里插入图片描述

2、哈夫曼树的构造算法

在这里插入图片描述
在这里插入图片描述

3、哈夫曼编码

1. 哈夫曼编码

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 哈夫曼树构造过程

在这里插入图片描述

3. 哈夫曼编码过程

在这里插入图片描述

4. 哈夫曼译码过程

在这里插入图片描述

5. 哈夫曼编码的特点

在这里插入图片描述

六、本章小结

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值