0分求助
查看原帖
0分求助
748749
MITSKS12345楼主2023/2/28 11:26

rt

#include<bits/stdc++.h>
using namespace  std;
int cnt=0;
struct stu{
    int data;
	int l,r;
}tr[100];
char pre[100];
char in[100];
int len;
void hx(int root)
{
    if(root!=-1){
	    hx(tr[root].l);
	    hx(tr[root].r);
	    cout<<tr[root].data;
	}
} 
int hy(char pre[],char in[],int len)
{
	if(len==0)
		return -1;
	int root=+cnt;
	tr[root].data=pre[0];
	int i;
	for(int i=0;i<len;i++){
		if(in[i]==pre[0])
		{
			break;
		}
	}
	tr[root].l=hy(pre+1,in,i); 
	tr[root].r=hy(pre+1+i,in+i+1,len-i-1);
	return root; 
}
int main()
{
    cin>>pre;
    cin>>in;
	int len=strlen(pre);
	int rt=hy(pre,in,len);
	hx(rt); 
	return 0;
 } 
2023/2/28 11:26
加载中...