概述
其实,生活中树型结构有很多应用,比如:自然界中的树,人类社会的家谱和行政组织结构等等。
我写的这篇文章主要是关于树和二叉树的一些相关概念的理解的解读,方便后续对应二叉树这种数据结构的深入理解和研究。
一、树的定义
树型结构属于非线性结构(元素的前驱和后继的个数不是为1的),这一节讲的树形结构元素的前驱个数为1,但是元素的后继个数不是为1了(可以有多个后继),所以说树形机构元素的关系是一对多或者多对多的。树型结构的特点是节点之间是有分支的,并且还具有层次关系。
首先我们来看看树的定义
树(Tree)是 n(n >=0)个节点的有限集。
若 n = 0,称为空树;
若 n > 0,则它满足如下两个条件:
有且仅有一个特定的称为根(Root)的节点;
其余节点可以分为m (m >= 0)个互不相交的有限集T1,T2,T3…Tm,其中每一个集合本身又是一棵树,并称为根的子树(SubTree)
我们来看看下面这一棵树: