数据结构与算法——从零开始学习(五)树和二叉树

本文详细介绍了树和二叉树的相关概念,包括树的定义、特点、形式化表示、相关术语以及基本操作。接着讲解了二叉树的定义、存储结构、基本操作以及遍历方法。此外,还探讨了树与森林的转换,以及最优二叉树——哈夫曼树的构造、编码和应用。最后总结了树的遍历算法,强调了哈夫曼编码在数据压缩中的作用。

系列文章

第一章:基础知识

第二章:线性表

第三章:栈和队列 

第四章:字符串和数组

第五章:树和二叉树

第六章:图

 


目录

第五章 :树和二叉树

第一节:树的定义及相关术语  

1.1 定义

1.2 特点

1.3 形式化

1.4 相关术语

1.5 树的基本操作

第二节:二叉树

2.1 基本概念

2.2 存储结构

2.3 二叉树基本操作

2.4 二叉树的遍历

第三节:树与森林

3.1 树的存储

3.2 树、森林与二叉树的相互转换

3.3  树和森林的遍历

第四节:最优二叉树——哈夫曼树

4.1 基本概念

4.2 哈夫曼树的构造算法

4.3 哈夫曼编码

4.4 哈夫曼编码算法实现

本章小结


第五章 :树和二叉树

树和图是两种重要的非线性结构。线性结构中结点具有唯一前驱和唯一后继的关系,而非线性结构中结点之间的关系不再具有这种唯一性。其中,树形结构中结点间的关系是前驱唯一而后继不唯一,即元素之间是一对多的关系;在图结构中结点之间的关系是前驱、后继均不唯一,因此也就无所谓前驱、后继了。直观地看,树形结构既有分支关系,又具有层次关系,它非常类似于自然界中的树。树形结构在现实世界中广泛存在,如:家谱、行政组织机构等都用树形表示。计算机领域的DOS和Windows操作系统中对磁盘文件的管理就采用了树形目录结构;在数据库中,树形结构也是数据的重要组织形式之一。

第一节:树的定义及相关术语  

1.1 定义

树(tree)是n(n>=0)个结点的有限集合。当n=0时,该集合满足以下条件:

(1)有且只有一个特殊的结点称为树的(root),根结点没有直接前驱结点,但有零个或多个直接后继结点。

(2)跟结点之外的其余n-1个结点被

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

艾阳Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值