数据结构-树(一)

来源:互联网 发布:idea java文件夹 蓝色 编辑:程序博客网 时间:2024/06/05 13:22

树:是n个结点的有限集。n=0时称为空树
(1)在任意一颗非空树中有且仅有一个特定的称为根(root)的结点。
注意:在数据结构中根节点是唯一的
(2)当n>1时,其余结点可分为m(m>0)个互不相交的有限集,其中每个集合本身又是一棵树,并称为根的子树

结点的分类
结点的度:就是该结点拥有子树的总数量。
如果度为0的结点称为叶结点或终端结点。度不为0的结点称为非终端结点或分支结点。
树的度:是树内各结点的度的最大值。

祖先:结点的祖先是从根到该结点所经分支上的所有结点
孩子:结点的子树的根称为该结点的孩子。
双亲:孩子结点的父结点称为双亲。
兄弟:拥有同一个双亲的结点之间互称兄弟。
子孙:以某结点为根的子树中的任一结点都称为该结点的子孙。
结点的层次:从根开始定义起,根为第一层,根的孩子为第二层,若某结点在第i层,则其字数就在i+1层。其双亲在同一层的结点互为堂兄弟。
深度:树中结点的最大层次称为树的深度。

线性表和树的结构的区别:
线性结构:
①第一个数据元素,无前驱
②最后一个数据元素,无后继
③中间元素,一个前驱一个后继

树结构:
①根节点,无双亲,唯一
②叶节点,无孩子,可以多个
③中间节点,一个双亲多个孩子

1 0