1944

    技术2022-05-11  58

    // 2007-02-24 21:43:25 Accepted 1944 C++ 00:00.00 836K  #include  < iostream > using   namespace  std; // 树结点 struct  TNode{     char  data;    TNode *  lchild;    TNode *  rchild;}; // 返回root指针 TNode *  Create( char   * preord, char   * inord, int  n){     if (n == 0 ) return  NULL;    TNode *  root = new  TNode;    root -> data = preord[ 0 ];     char   * p = strchr(inord,preord[ 0 ]);    root -> lchild = Create(preord + 1 ,inord,p - inord);    root -> rchild = Create(p - inord + preord + 1 ,p + 1 ,n - 1 - (p - inord));     return  root;} void  PostTravel(TNode  * T){     if (T == NULL) return ;    PostTravel(T -> lchild);    PostTravel(T -> rchild);    putchar(T -> data);} void  Destory(TNode  * T){     if (T == NULL) return ;    Destory(T -> lchild);    Destory(T -> rchild);    delete T;} int  main(){     char  preord[ 30 ],inord[ 30 ];     while (scanf( " %s %s " ,preord,inord) != EOF){        TNode  * T = Create(preord,inord,strlen(preord));        PostTravel(T);        putchar( '/n ' );        Destory(T);    }}  

    最新回复(0)