树
概述
定义
树是计算机中非常重要的一种数据结构,树是由n(n>=1)个有限结点组成的一个具有层次关系的集合。之所以叫成树,是因为它看起来像一颗倒过来的树,根朝上,树叶朝下。
相关术语
(1)每个结点有0个或多个子结点;
(2)父结点:就是结点的父亲,当前结点的上个结点。
(3) 没有父节点的结点为根结点,例如上图中的A结点就是根结点
(4)每一个非根结点只有一个父结点。
(5)子树:每个结点及其后代整体上可以看做是一棵树,称为当前结点的父结点的一个子树
(6)结点的度:一个结点含有的子树的个数。例如上图中的A结点的度为6,其子树有(B,C,DH,EIJPQ,FKLM,GN),F结点的度为3,其子树有(K,L,M)
(7)叶结点:度为0的结点,也叫作终端结点。例如:B结点,C结点,H结点等
(8)分支结点:度不为0的结点,也叫非终端结点。例如:A结点,E结点等
(9)结点的层次:从根结点开始,根结点的层次为1,更的直接后继层次为2,依次类推。这里结点A的层次为4层
(10)结点的层序编号:将书中的结点按照从上层到下层,同层中从左到有的次序排成一个线性序列,把他们变成连续的自然数。
(11)树的度:树中所有结点的度的最大值。例如上面这棵树的度为6
(12)数的深度:树中结点的最大层次,这棵树的深度为4
(13)森林:m(m>=0)个互不相交的树的集合。将一棵非空树的根结点删除,树就变成了森林。
(14)孩子结点:从字面也可理解,就是一个结点的直接后继结点称为该结点的孩子结点。
(15)双亲结点(父结点):一个结点的直接前驱称为该节点的双亲结点
(16)兄弟结点:同一双亲结点的孩子结点间称为兄弟结点。例如父结点为F的子树中,K,L,M之间互称为兄弟结点。