洛谷 P1030 求先序排列

2023-05-24,,

题目描述

给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。

输入输出格式

输入格式:

2行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序排列。

输出格式:

1行,表示一棵二叉树的先序。

输入输出样例

输入样例#1:

BADC
BDCA

输出样例#1:

ABCD

搜索 
屠龙宝刀点击就送
#include<cstdio>
#include<cstring>
int t,q;
char last[],mid[],c[];
char gen(int l,int r)
{
int i,j;
for(i=t;i>=;i--)
{
for(j=l;j<=r;j++)
{
if(mid[j]==last[i])
return mid[j];
}
}
}
void find(int l,int r)
{
int i;
char k;
k=gen(l,r);
c[q++]=k;
for(i=l;i<=r;i++)
{
if(mid[i]==k)
{
break;
}
}
if(l<=i-)
find(l,i-);
if(i+<=r)
find(i+,r);
}
int main()
{
int i,j;
scanf("%s",mid);
getchar();
scanf("%s",last);
t=strlen(mid)-;
find(,t);
printf("%s",c);
return ;
}


洛谷 P1030 求先序排列的相关教程结束。

《洛谷 P1030 求先序排列.doc》

下载本文的Word格式文档,以方便收藏与打印。