搜索
写经验 领红包
 > 社会

数据结构中树的概念(数据结构树的结构)

导语:数据结构之树的概念

树是数据结构中的一种,其属于非线性数据结构结构的一种,我们前文所提到的数据结构多数都是线性的,这也是较为简单的数据结构,而接下来的树与图均属于非线性数据结构,也是概念极多的一类。

关键词:节点, 结构, 数据结构, 术语, 子树

1.什么是树

树是数据结构中的一种,其属于非线性数据结构结构的一种,我们前文所提到的数据结构多数都是线性的,这也是较为简单的数据结构,而接下来的树与图均属于非线性数据结构,也是概念极多的一类。

树是由结点或顶点和边组成的(可能是非线性的)且不存在着任何环的一种数据结构。没有结点的树称为空(null或empty)树。一棵非空的树包括一个根结点,还(很可能)有多个附加结点,所有结点构成一个多级分层结构。

树的定义:n个节点组成的有限集合。n=0,空树;n>0,1个根节点,m个互不相交的有限集,每个子集为根的子树。

如图所示,图为一棵树:

2.树的基本术语

l 节点的度:树中某个节点的子树的个数。

l 树的度:树中各节点的度的最大值。

l 分支节点:度不为零的节点。

l 叶子节点:度为零的节点。

l 路径:i->j;路径长度:路径经过节点数目减1。

l 孩子节点:某节点的后继节点;双亲节点:该节点为其孩子节点的双亲节点(父母节点);兄弟节点:同一双亲的孩子节点;子孙节点:某节点所有子树中的节点;祖先节点:从树节点到该节点的路径上的节点。

l 节点的层次:根节点为第一层(以此类推);树的高度:树中节点的最大层次。

l 有序树:树中节点子树按次序从左向右安排,次序不能改变;无序树:与之相反

l 森林:互不相交的树的集合。

3.树的性质

l 树的节点树为所有节点度数加1(加根节点)。

l 度为m的树中第i层最多有m^(i-1)个节点。

l 高度为h的m次树至多(m^h-1)/(m-1)个节点。

l 具有n个节点的m次树的最小高度为logm( n(m-1) + 1 ) 向上取整。

本文内容由小迪整理编辑!