/*树的前序遍历,中序遍历和后续遍历。 用递归的方法。char s+n 表示从s的第n个字符开始读取,前面的去掉。 */ #include <stdio.h> #include <cstring> void build(int n,char* s1,char* s2,char *s) { if(n<=0) return; int p=strchr(s2,s1[0])-s2; build(p,s1+1,s2,s); build(n-p-1,s1+1+p,s2+1+p,s+p); s[n-1]=s1[0]; } int main() { char s1[30]; char s2[30]; char ans[30]; while(scanf("%s%s",s1,s2)==2) { memset(ans,0,sizeof(ans)); int n=strlen(s1); build(n,s1,s2,ans); ans[n]='\0'; printf("%s\n",ans); } return 0; }
hoj Tree Recovery
最新推荐文章于 2014-11-19 20:16:01 发布