什么是树?
在数据结构中,树的定义如下:
树是n(n>=0)个节点的有限集。当n=0时,称为空树。在任意一个非空树中有如下特点:
1、每个节点有零个或多个子节点;没有父节点的节点称为根节点
2、每一个非根节点有且只有一个父节点;除了根节点外,每个子节点可以分为多个不相交的子树
下面这张图,就是树的结构:
在上图中,节点1是根节点,节点5、6、7、8是树的末端,没有“孩子”,称为叶子节点。图中的节点2、3是根节点1的其中一个子树。
同时,树的结构从根节点到叶子节点,分为不同的层级。从一个节点的角度来看,它的上下级和同级结点关系如下:
再上图中,节点4的上一级节点,是节点4的父节点;从节点4衍生出来的节点,是节点4的孩子节点,和节点4同级,由同一个父节点衍生出来的节点,是节点4的兄弟节点。
点衍生出来的节点,是节点4的兄弟节点。
树的最大层级树被称为树的高度或者是深度,上图中的树的高度是4.