一
树的定义:树(Tree)是n(n≧0)个结点的有限集。n=0时称为空树。在任意一颗非空树中:有且仅有一个特定的称为根的结点。当n>1时,
其余结点可分为m(m>0)个互不相交的有限集T1、T2、T3……、Tm,其中每个集合本身又是一棵树,并且称为根的子树(subtree)。
//例如:
这里的子树是相对于某个结点来说的,例如BDGHI为A结点的左子树,CEFJ为A结点的右子树。而DGHI为B结点的左子树。
强调:
(1)n>0时,根结点是唯一的,不可能存在多个结点,别和现实中的大树混在一起。
(2)m>0时,子树的个数没有限制,但它们一定是互不相交的。例如上图中的DE不可连在一起。
二:结点分类
(1)节点的度:结点拥有的子树数称为结点的度(例如上图中的A结点的度为2),度为0的结点称为叶结点或终端结点(例如上图中的F,G,H,I,J结点)
(2)树的度是树中结点的度的最大值,如上图中,结点的度最大值为2,所以树的度为2。
三:结点间的关系
(1)结点的子树的根称该结点的孩子,例如上图中A结点的孩子为(B,C)
(2)相应的,该结点称为孩子的双亲(B,C的双亲为A),这里因为只有一个结点,所以称为双亲,(不叫父亲也不叫母亲)。
(3)同一个双亲的孩子之间称为兄弟(例如B,C)
(4)结点的祖先是从根到该结点所经分支上的所有结点。(对于D结点来说,A,B都是它的祖先)
(5)以某结点为根的子树中的任一结点都称为该结点的子孙。(B的子孙有D,G,H,I)
四:树的其它概念
(1)树的层次(如上图所示)
(2)树的深度或高度(上图中的高度为4)
(3)如果将树中结点的各子树看成从左到右是有次序的,不能互换的,则称该树为有序树。
参考:https://blog.csdn.net/zhuoya_/article/details/80411880