#include"BiTree.h"
#include<iostream.h>
Status CreatBiTree(BiTree &T)//先序创建二叉树
{
TElemType e;
cin>>e;
if(e=='#')T=NULL;
else
{
T=new BiTNode;
T->data=e;
CreatBiTree(T->lchild);
CreatBiTree(T->rchild);
}
return OK;
}
Status PreOrderTraverse(BiTree T)//先序遍历
{
if(T)
{
cout<<T->data;
PreOrderTraverse(T->lchild);
PreOrderTraverse(T->rchild);
}
return OK;
}
Status InOrderTraverse(BiTree T)//中序遍历
{
if(T)
{
PreOrderTraverse(T->lchild);
cout<<T->data;
PreOrderTraverse(T->rchild);
}
return OK;
}
Status PostOrderTraverse(BiTree T)//后序遍历
{
if(T)
{
PreOrderTraverse(T->lchild);
PreOrderTraverse(T->rchild);
cout<<T->data;
}
return OK;
}
int main()
{
BiTree T;
CreatBiTree(T);
PreOrderTraverse(T);
return 0;
}