二叉树的遍历是指从根节点出发,按照某种次序依次访问二叉树中的所有结点,使得每个结点被访问一次且仅被访问一次。
常见的二叉树遍历方式有四种:前序遍历,中序遍历,后序遍历,及层序遍历。
今天主要介绍前序遍历:
前序遍历的规则为:若二叉树为空,则返回空操作。否则先访问根节点,然后前序遍历左子树,在前序遍历右子树。
二叉树的定义是用递归的方式,所以实现遍历的算法也是采用递归,而且极其简洁明了。前序遍历的代码如下:
void PreOrderTraverse(BiTree T)
{
if(T==NULL)return;
cout<<T->data;
PreOrderTraverse(T->lchild);
PreOrderTraverse(T->rchild);
}