树
前言:以下所有概念来自教材、算法导论或其他权威资料,如有记录出错,欢迎指正
定义
- 树是一种非线性的数据结构
- 树是若干个结点的集合(个数>=0),是由唯一的根和若干棵互不相交的子树组成
- 树的结点树可以为0,对于这种树,我们称为空树
- 树与图的区别在于树中没有一个闭环
基本术语
- 结点:组成树的元素,结点包含数据元素和指向子树的分支
- 结点的度:结点分支数
- 树的度:结点拥有的最大分支数
- 叶子结点:度为0的结点
- 非叶子结点:度不为0的结点,除去根节点的非叶子结点也称为内部结点
二叉树
- 定义:即每个结点都最多只有两个子结点的树
- 完全二叉树:高度为k的二叉树,其1~h-1层为满结点,且其h层(叶子结点层)的节点从左至右依次排列(最多2^h-1个,最少0个)
- 满二叉树:除最后一层外,每个结点都有左右子结点的二叉树<