树 - 基础概念与专有名词
2019-06-20 本文已影响0人
sexyhair
什么是树?
树是一种典型的非线性结构,它可以用来描述有分支的结构,是由一个或一个以上的节点所组成的有限集合,且具有以下特质
- 存在一个特殊的节点,成为树根(root)。
- 其余的节点分为n>= 0 个互斥的集合,T1,T2,T3 ... Tn ,且每个集合成为子树。
- 由一个或一个以上的节点所组成,节点间有串联且不形成无出口的循坏
树的专有名词
树根或根节点(root):
没有父节点的节点为根节点,一棵树中最多一个根节点
父节点(parent):
每一个节点的上层节点为父节点
子节点(childen):
每一个节点的一层节点为子节点
兄弟节点(siblings):
有共同父节点的节点为兄弟节点
度(degree):
子树的个数,没有子节点的节点的度为0(注意子树的概念)
深度:
树中所有节点的层级最大的值则是树的深度
终端节点或叶子节点(terminal node):
没有子节点的节点,即度为0的节点
非终端节点(non-terminal node):
叶子以外的节点均为非终端节点,有子节点的根节点也是非终端节点
阶层或级(level):
树的层级,根节点层级(阶层)为1
高度(height):
树的最大阶层
树林(forest):
树林是由m个互斥树的集合,移去树根即为树林
祖先(ancestor)和子孙(descendent):
所谓祖先,是指从树根到该节点路径上所包含的节点,而子孙则是在该节点树中的任一节点
注意:
树在计算机内存中的存储方式以链表为主