先序、 后序、 中序遍历树一次搞定
void TRAVELS(BiTree T,int a){
if(T)
{
if(a==1)
Print(T->data);
if(T->lchild)
{
TRAVELS(T->lchild,a);
}
if(a==2)
Print(T->data);
if(T->rchild)
{
TRAVELS(T->rchild,a);
}
if(a==3)
Print(T->data);
}
}
//主要是传递了一个参数,当a==1时,先序,
a==2时,中序,
a==3时,后序
main 函数中条用方式是
cout<<endl<<"先序遍历树的结果是:";
TRAVELS(T,1);
cout<<endl<<"中序遍历树的结果是:";
TRAVELS(T,2);
cout<<endl<<"后序遍历树的结果是:";
TRAVELS(T,3);
用的是递归算法,当然还有比这更好的方法,这里只是供大家看看