遍历是二叉树的一类重要操作,也是二叉树的其它操作和应用的算法基本框架
二叉树(Binary Tree)
- 定义:含有n(n>=0)个结点的有限集合。当n=0时为空二叉树,
在非空二叉树中:有且仅有一个根结点;其余节点划分为两互不相交的子集L和R,其中L和R也是一棵二叉树,分别称为左子树和右子树 - 术语(部分)
- 层次:根为第1层,根的孩子为第2层,依次计数
- 深度(高度):最大层次称为高度
- 度:结点的孩子个数
- 内部结点(分支结点):非叶子结点
- 叶子结点:度为0的结点
- 满二叉树(Full Binary Tree):一棵深度为k且有 2k−1 个结点的二叉树
- 完全二叉树(Complete Binary Tree):深度为k且含有n个结点的二叉树,其每个结点都与深度为k的满二叉树中编号从1至n的结点一一对应。
- 性质:
- 在非空二叉树的第i层最多有 2k−1 个结点(i≥1)。 —- 可用数学归纳法证明
- 深度为k的二叉树最多有 2