题意翻译
输入一棵二叉树的先序遍历和中序遍历序列,输出它的后序遍历序列。
题目描述
输入输出格式
输入格式:
输出格式:
输入输出样例
输入样例#1:
DBACEGF ABCDEFG
BCAD CBAD
输出样例#1:
ACBFGED
CDAB
/*UVA536*/
#include<iostream>
#include<cstring>
using namespace std;
string preorder,inorder;
void postorder(string pre,string in){
if(pre.size()<=0){
return;
}
int len = 0;
len = in.find(pre[0]);//root
postorder(pre.substr(1,len),in.substr(0,len));
postorder(pre.substr(len+1),in.substr(len+1));//len+1取到最右边
cout<<pre[0];
//递归左 递归右 根 后序遍历
}
int main(){
while(cin>>preorder>>inorder){
postorder(preorder,inorder);
cout<<endl;
}
return 0;
}