回顾下树和二叉树

树是由边连接的节点或顶点的分层集合。树不能有循环,并且只有节点和它的下降节点或子节点之间存在边。同一父级的两个子节点在它们之间不能有任何边。每个节点可以有一个父节点除非是顶部节点,也称为根节点。每棵树只能有一个根节点。每个节点可以有零个或多个子节点。在下面的图中,A是根节点,B、C和D是A的子节点。我们也可以说,A是B、C、D的父节点。B、C和D被称为兄弟姐妹,因为它们是来自同一父节点A。

图解:

在这里插入图片描述

度:特定父节点的子节点的总数被称为它的度数。在我们的例子中,A有3度,B有1度,C有度3,D有度2。
路径:从源节点到目标节点的节点和边的序列称为两个节点之间的路径。路径的长度是路径中节点的数目。A到M之间的路径是A-C-H-M,路径的长度为4。
节点的高度:节点的高度由节点与最深节点(叶子哦)之间的距离决定。例如,节点B的高度为2。
层次:层次代表节点的生成。如果父节点处于层次N,则其子节点将位于N+ 1层次。因此,该层次由节点和根之间的边数定义。
例如 A 在0 B就是1 K,L,M是在3层

二叉树的总高度 : 从(根节点)0开始,有多少层即为高度 ;上例就是高度3

深度:节点的深度由节点和根节点之间的边数决定。例如,H的深度是2,L的深度是3。

键:用于搜索,表示节点的值。

树结构可以用于菜单分级和组织架构展示等(可能工作中常用的)

下面介绍下二叉树:

二叉树是一种基本的树结构,二叉树的每个节点最多有两个孩子。

在这里插入图片描述
自平衡二叉树

自平衡二叉搜索树或高度平衡二叉搜索树是一种特殊类型的二叉搜索树,它试图通过自动调整来尽量保持树的高度或层次尽可能小。下图左侧的展示了二叉搜索树,右边的是自平衡二叉搜索树:
在这里插入图片描述

红黑树的基本定义:

1.根节点是黑色的;

2.叶节点是黑色的;

3.红色节点不能有红色子节点;

4.从根节点出发,到每一叶节点的路径上,黑节点的数量相同;

5.节点可以为红色和黑色;

红黑树的插入过程:

插入的节点首先会被涂成红色的,插入过程中按照二叉搜索树的插入节点的过程插入节点。然后进行平衡处理,如果节点c插入的时候,需要进行平衡处理且节点c是父节点的左儿子,那么有以下两种情况:
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章