树的定义
树是n个结点的有限集。当n=0时,称为空树。在任意一棵非空树中,有且仅有一个称为根的结点。当n>1时,其余结点可分为m个互不相交的有限集,其中每一个结合本身又是一棵树,称为根的子树。
树的定义是递归的方法,也就是树的定义中还用到了书的概念。
度:结点拥有的子树数。
度为0的结点称为叶节点/终端结点 ; 度不为0的结点称为分支节点,除根结点外,分支结点也成为内部结点。
树的度:树的各结点的度的最大值。
结点间的关系
孩子:结点的子树的根为该结点的孩子 ; 相应的,该结点称为孩子的双亲。
兄弟:同一个双亲的孩子之间互称兄弟。
祖先:从该结点到根所经分支上的所有结点。相反,以某结点为根的子树上的任一结点都称为该结点的子孙。
其他相关概念
结点的层次:从根结点开始,根为第二层,根的孩子称为第三层。
其双亲在同一层的结点互为堂兄弟。
树中结点的最大层次称为树的深度或高度。
森林:m棵互不相交的树的集合。对书中每个结点而言,其字数的集合即为森林。
树的存储结构主要有三种:双亲表示法,孩子表示法,孩子兄弟表示法。