#includeusing namespace std; char b[20],c[20]; void shu(int bl,int br,int cl,int cr) { cout << c[cr]; int bk; //记录根点的位置 for(int i=bl;i<=br;i++) { if(c[cr]==b[i]) { bk=i; break; } } int ln=bk-bl; int rn=br-bk; if(ln>0)//左边有数 { shu(bl,bl+ln-1,cl,cl+ln-1); } if(rn>0)//右边有数 { shu(bk+1,bk+rn,cr-rn,cr-1); } } int main () { cin >> b >> c; int l=strlen(b)-1; shu(0,l,0,l); return 0; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)