树
是n(n>=0)个节点的有限集。n=0时称为空树。在任意一颗非空树中:
- 有且仅有一个特定的称为根(Root)的节点;
- 当n>1时,其余节点可分为m(m>0)个互不相交的有限集T1、T2、......、Tn,其中每一个集合本身又是一棵树,并且称为根的子树。
此外,树的定义还需要强调以下两点:
- n>0 时根节点是唯一的,不可能存在多个根节点,数据结构中的树只能有一个根节点。
- m>0 时,子树的个数没有限制,但它们一定是互不相交的。
概念
- 节点 是数据结构中的基础,是构成复杂数据结构的基本组成单位。
- 度 节点拥有的子树数目称为节点的度
- 关系 节点子树的根节点为该节点的孩子节点。相应该节点称为孩子节点的双亲节点。 同一个双亲节点的孩子节点之间互称兄弟节点。
- 层次 从根开始定义起,根为第0层,根的孩子为第1层,以此类推。
- 深度 树中节点的最大层次数称为树的深度或高度
- 平衡因子 此节点往下 左子树深度 - 右子树深度=平衡因子