可能编译时会有些语法小错误(比如分号,->,等),很容易就自己纠正了哦,思路绝对是完全正确的,所以用的话就自己试着改改吧,直接复制粘贴,就正确,岂不是太没写代码体验了,自己改改才印象更加深刻的呢(▽)~~~~;
//遍历算法
#include<iostream>
using namespace std;
typedef struct BiNode{
char data;
struct BiNode *lchild,*rchild;
}BiTNode,*BiTree;
void CreratBiTree(BiTree &T){
char ch;
cin>>ch;
if(ch=='#') T=NULL;
else{
T=new BiTree;
T->data=ch;
CreratBiTree(T->lchild);
CreratBiTree(T->rchild)
}
}
void InOderTraverserve(BiTree T){
if(T){
InOderTraverserve(T->lchild);
cout<<T-data;
InOderTraverserve(T->rchild);
}
}
void main(){
BiTree tree;
cout<<"please input
";
CreratBiTree(tree);
cout<<"middle result
";
CreratBiTree(tree);
cout<<"front result
";
cout<<endl;
}