遍历:制定一个规则,按照某种次序,把所有结点都访问一遍。
层次遍历 | 基于树的层次特性确定的次序规则 |
先序遍历 | 基于树的递归特性确定的次序规则 |
中序遍历 | 基于树的递归特性确定的次序规则 |
后序遍历 | 基于树的递归特性确定的次序规则 |
二叉树的递归特性:
- 要么是个空二叉树
- 要么就是由“根结点+左子树+右子树”组成的二叉树
先序遍历:根结点、左子树、右子树
中序遍历:左子树、根结点、右子树
后序遍历:左子树、右子树、根结点
//
typedef struct BiTNode{
ElemType data;
struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;
//先序递归遍历
void PreOrder(BiTree T){