递归遍历树

試著忘記壹切 提交于 2019-12-04 16:32:22
//遍历算法
#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\n";
    CreratBiTree(tree);
    cout<<"middle result\n";
    CreratBiTree(tree);
    cout<<"front result\n";
    cout<<endl;
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!