前言
本文主要记录二叉树的一些基本概念和说明一些特殊的二叉树类型
参数链接:https://www.cnblogs.com/sunshineliulu/p/7775063.html
一、基本概念
概念名 | 定义 |
---|---|
二叉树 | 每个节点最多有两个子树的树结构,如上图所示 |
根节点 | 二叉树的最顶上的节点,如上图的节点0 |
父、子节点 | 父子节点是相对而言的,如果一个节点下面存在其它节点 ,则称该节点为其它节点的父节点,其它节点为该节点的子节点。如上图中,节点0是节点1和节点2的父节点,节点6是节点14的父节点 |
兄弟节点 | 具体相同父节点的节点互为兄弟节点,如节点1和节点2互为兄弟节点,其有共同父节点0 |
节点的度 | 节点的子树数,最多为2。如上图中,节点0的度为2,节点6的度为1 |
叶子节点 | 度为0的节点,即没有子节点的节点,如节点7,节点8 |
节点的深度 | 指从根节点到该节点所经过的边的数量,如节点7的深度为3,节点4的深度为2,节点0的深度为0 |
节点的高度 | 指从该节点到叶子节点的最长路径的边的数量。如节点1的高度是2,节点6的高度是1,节点14的高度为0 |
树的深度 | 指所有节点的最大深度 |
树的高度 | 指所有节点的最大高度 |
层数 | 指展开的二叉树的层的数量,为树的深度或者高度的值加1,如上图为4层。依实际需要,层的编号从可以0开始,也可以从1开始,即可以约定第0层为节点0,也可以约定第1层为节点0; |
二、基本性质
下述在说明性质时,约定第0层为节点0。
名称 | 性质 |
---|---|
第n层最大的节点数 | 2的n次方,这里n是指第n层 |
树的最多节点数 | 2的n次方-1,这里n是指总层数,如上图是层数是4 |
三、特殊二叉树
注意这里并没有列表出所有特殊二叉树,而一些相对比较常见的二叉树
类型 | 定义 | 图示 |
---|---|---|
满二叉树 | 最后一层全为叶子节点,其它每一层的节点都有两个子节点 | |
完全二叉树 | 对于一个树高为h的二叉树,如果其第0层至第h-1层的节点都满。最后一层可满或可不满;如果最下面一层节点不满,则所有的节点在左边是连续排列的,空位都在右边。可以理解为相当于满二叉树的最后一层从右到左,删除部分节点。 | |
平衡二叉树 | 也称为AVL树,指空树或者左右两子树的高度差的绝对值不超过1,并且左右两子树也是平衡二叉树 | |
二叉搜索树 | 又称二叉查找树,二叉排序树,满足,若左子树不为空,则左子树上的节点的值均小于等于它的根节点的值;若右子树不为空,则右子树上所有节点的值无大于等于它的根节点的值;并且左右子树也是二叉搜索树 |