树
树的概念:是一种非线性结构,能够很好的描述有分支和层次特性的数据集合
AAA:根节点
以BBB为根节点和以CCC为根节点的树成为AAA的子树
树作为一种非线性数据结构,是由 n (n>0)n~(n>0)n (n>0) 个结点组成的有限集合。
除根节点外的其他结点划分为 m (m≤0)m~(m\leq0)m (m≤0) 个互不相交的有限集
其中每一个集本身又是一棵树,成为根节点的子树
树结点的度:结点拥有子树的数量为结点的度
度为 000 的结点为叶子结点,度不为 000 的结点称为分支结点
一棵树的度定义为所有的结点中,度的最大值。
例:AAA的度为222,CCC的度为111,此树的度为222
结点的前驱与后继:
前驱:除根节点外,其余每个结点都有一个唯一的前驱点,被称为父亲或双亲
后继:每个结点可以有000个或多个后继结点,被称为孩子
如有些点有共同点父亲,则这些点成为兄弟结点
祖先结点:沿着根节点到某一节点路径上的所有节点都是这个结点的祖先结点
树中结点的层次:树中根节点为111层,根节点的孩子为第222层,以此类推。
树中的最大层次为树的深度或高度。
注意:部分题目根节点为第000层
除根节点没有父节点外,其余结点有且只有一个父节点
nnn个结点的树,有且仅有n−1n-1n−1条边
遍历vector