#include<bits/stdc++.h> |
using namespace std; |
int pre[31],l=0; |
void change( int z[], int h[], int length) |
{ |
if (length) |
{ |
int index=0; |
int temp=h[length-1]; |
pre[l++]=temp; |
while (index<length) |
{ |
if (z[index]==temp) |
break ; |
index++; |
} |
change(z,h,index); |
change(z+index+1,h+index,length-index-1); |
} |
} |
int main () |
{ |
int n,i; |
int in[31],post[31]; |
cin>>n; |
for (i=0;i<n;i++) |
cin>>post[i]; //后序 |
for (i=0;i<n;i++) |
cin>>in[i]; //中序 |
change(in,post,n); |
cout<< "Preorder:" ; |
for (i=0; i<n; i++) |
cout<< " " <<pre[i]; |
return 0; |
} |
by: 发表于:2017-12-13 10:33:17 顶(0) | 踩(0) 回复
??
回复评论