将树的定义明确后,需要知道节点、节点的度、叶子节点等基本概念,如下:
(1)节点node:树中的一个数据项及指向分支的指针项
(2)节点的度degree:节点的子树的数目,比如上图中节点4的度为2
(3)树的度degree:树的所有节点中度的最大值,比如上图中节点1的度最大,为3
(4)叶子节点:树中度为0的节点,比如上图中节点3、4
(5)非叶子节点Q:树中度不为0的节点,比如上图中1、2、4
(6)孩子节点和双亲节点:节点子树的根称为该节点的孩子节点,该节点称为孩子节点的父节点(或双亲节点parent),比如上图中节点2为节点5的父节点,结点5为节点2的孩子节点
(7)兄弟节点:对于相同父节点的所有孩子节点来说,互为兄弟节点,比如上图中2、3、4互为兄弟节点,且6、7互为兄弟节点
(8)层次:前面已经提到,树是一种层次结构,节点的层次是按照递归定义的。将树的根节点层次定义为1,除根节点以外所有的节点层次为其父节点层次加1。比如上图中节点4的层次为2,节点6的层次为3
(9)树的深度(depth):树所有节点的层次值的最大值,比如上图中树的层次值最大为3,即树的深度(或称为高度)为3
(10)堂兄弟节点Q:同一“层次”的所有节点称为堂兄弟节点,比如5、6、7节点
(11)层次路径Q:从根节点到某x节点所经过的所有节点,称为节点x的层次路径(有且仅有一条路径,绝不会存在两条不同路径)
(12)祖先:在某x节点的层次路径上的所有节点,称为x节点的祖先(不包括x本身)
(13)子孙节点:当某一节点视为根节点时,其所有子树上的节点,都称为该节点的子孙节点
(14)森林forest:多个互不相交的树构成的集合