二叉树的遍历是指按照某种搜索路径访问书中的每个节点,使得每个节点均被访问一次,且仅被访问一次。
1、先序遍历(NLR)
先序遍历的操作过程:访问根节点;先序遍历左子树;先序遍历右子树。
void PreOrder(BiTree T)
{
if(T!=NULL)
{
visit(T);
PreOrder(T->lchild);
PreOrder(T->rchild);
}
}
2、中序遍历
中序遍历操作过程:中序遍历左子树;访问根节点;中序遍历右子树。
void InOrder(BiTree T)
{
if(T!=NULL)
{
InOrder(T->lchild);
visit(T);
InOrder(T->rchild);
}
}
3、后序遍历
后序遍历操作过程:后序遍历左子树;后序遍历右子树;访问根节点。
Void PostOrder(BiTree T)
{
if(T!=NULL)
{
PostOrder(T->lchild);
PostOrder(T->rchild);
visit(T);
}
}