树
树:树是由一个集合以及该集合上定义的一种关系结构
节点的度和树的度
节点的度:节点拥有的子树的数目称为节点的度 degree
树的度:就是各个节点度的最大值
度为0的节点叫叶子节点或终端节点
度不为0的节点叫非终端节点或者分支节点
除了根之外的分支节点也称为内部节点
节点的层次和树的深度
节点的层次从根开始定义,根的层次是1,其子树的层次是2
树中的节点最大层次树称为树的深度或高度 Depth
节点的祖先是从根节点到该节点路径是的所有节点
以某节点为根的树中的任一节点都称为该节点的子孙
有序树
如果将树中的节点的各子树看成是从左至右是有次序的,则称为有序树,如果不考虑子树的顺序,则是无序树
m叉树
森林
是由m棵互不相交的树的集合。m>=0
二叉树 最多分两个叉
每个节点的度均不超过2的有序树
可以递归定义
每个节点的孩子只能是0,1,2,并且每个孩子都有左右之分
二叉树的性质:
- 在二叉树的第i层上至多有2^(i-1)个结点(i≥1)。(数学归纳法可证)
- 深度为k的二叉树最多有2^(k) - 1个结点(k≥1)。(由性质1,通过等比数列求和可证)
- 一棵二叉树的叶子结点数为n0,度为2的结点数为n2,则n0 = n2 + 1。