• 蓝桥


    Description

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

    Input

    两行,每行一个字符串,分别表示中序和后序排列

    Output

    一个字符串,表示所求先序排列

    Sample Input

    BADC
    BDCA

    Sample Output

    ABCD
     1 #include <bits/stdc++.h>
     2 const int INF=0x3f3f3f3f;
     3 typedef long long LL;
     4 const double eps =1e-8;
     5 const int mod=1e9+7;
     6 const int maxn=1e5+10;
     7 using namespace std;
     8 
     9 string a;
    10  
    11 void solve(string b,string c)
    12 {
    13     string b1,b2,c1,c2;
    14     int lenb=b.size();
    15     int lenc=c.size();
    16     a+=c[lenc-1];
    17     int pos=b.find(c[lenc-1],0);
    18     b1=b.substr(0,pos);
    19     b2=b.substr(pos+1,(lenb-pos-1));
    20     c1=c.substr(0,pos);
    21     c2=c.substr(pos,(lenb-pos-1));
    22     if(b1.size()&&c1.size()) solve(b1,c1);
    23     if(b2.size()&&c2.size()) solve(b2,c2);
    24 }
    25  
    26 int main()
    27 {
    28     #ifdef DEBUG
    29     freopen("sample.txt","r",stdin);
    30     #endif
    31     
    32     string b,c;
    33     cin>>b>>c;
    34     solve(b,c);
    35     cout<<a<<endl;
    36      
    37     return 0;
    38 }

    -

  • 相关阅读:
    Kafka-1
    消息队列
    分布式分类
    认识分布式
    数据库引擎
    Django插入多条数据—bulk_create
    Django中update和save()同时作用
    联合唯一去重的SQL
    Direct3D11学习:(三)Direct3D11初始化
    Direct3D11学习:(零)常见问题及解决方法整理
  • 原文地址:https://www.cnblogs.com/jiamian/p/12578709.html
Copyright © 2020-2023  润新知