【数据结构】二叉树(一)

目录

一.什么是树

二.什么是二叉树

三.二叉树的性质


一.什么是树

概念:

树是一种非线性的数据结构,是N(N>=0)个结点组成的具有层次关系的集合。被称为树,是由于它外形像一颗倒挂的树,根在上,叶子结点在下。(在树形结构中,子树不能有交集,不然它就不是树形结构)

【数据结构】二叉树(一)_第1张图片

 

结点的度:一个结点含有的子树的个数就是该结点的度

树的度:一颗树里最大的结点的度就是这颗树的度。

叶子结点:度为0的结点就是叶子结点

根结点:没有父结点的结点就是根结点

父结点:如果一个结点有子结点,那么这个结点就是该子结点的父结点。

树的高度(深度):树中结点的最大层次就是树的高度(深度)。简单的说就是看看这个树总共有多少层,层数就是树的高度。

【数据结构】二叉树(一)_第2张图片

 

空树:树上一个结点都没有的树叫做空树,一个结点都没有,但树还存在。

有序树与无序树:如果一颗树关心它的子结点的顺序,那么它就是有序树,如果不关心子结点的顺序,那么它就是无序树。比如,二叉树的左右孩子不能互换,如果左右孩子相反,那么它代表的就不是同一颗树了,因此,二叉树是有序树。

二.什么是二叉树

 

根据上面我们已经大概知道了树的基本定义,在知道树的基础上,我们来学习一下什么是二叉树。

二叉树:二叉树是树的一种,它的每一个结点的度不超过2,二叉树的子树可以区分为左右子树,二叉树是一种有序树。

 根据二叉树的形态,它又可以划分为满二叉树和完全二叉树,这两种是二叉树的一个特殊形态。

来看看一颗满二叉树:

【数据结构】二叉树(一)_第3张图片

 

满二叉树,它的每一个结点的度都是2,完全二叉树,它是在满二叉树的基础上,最后一层,从右到左,少了几个结点的二叉树,满二叉树也是一种完全二叉树。

这是一颗完全二叉树:

【数据结构】二叉树(一)_第4张图片

 


三.二叉树的性质

1.如果一颗二叉树的根结点所在的层次为1,那么二叉树的第n层,最多有2^(n-1)个结点。第一层最多1个,第二层最多2,第三层最多4个……

2.任意一颗二叉树,度为0的结点树(N0)=度为2的结点树(N2)+1,简单表示为N0=N2+1

3.若根结点所在的层数(树的深度)为1,那么深度为K的树拥有的最大的全部结点树为:2^K-1,(K>=0),比如,树的深度为2,那么树的最大的结点树是3,树的深度为3,树的最大结点数为7

4.完全二叉树度为1的结点个数,不是1,就是0

5.二叉树如果从上至下,从左至右,每个结点,从0开始编号,对于第n个结点,它的左孩子则在第2n+1,它的右孩子在2n+2

你可能感兴趣的:(数据结构,算法)