给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。
输入
第一行输入一个字符串表示二叉树的中序排列,第二行输入一个字符串表示二叉树的后序排列。
输出
对于每组输入数据,输出二叉树的先序排列。
样例输入
BADC
BDCA
样例输出
ABCD

输入中序遍历和后序遍历求先序遍历
先在中序遍历种确定根节点的位置
以先序遍历的方式遍历

#include<bits/stdc++.h>

using namespace std;

string In,Post;

void Work(int LI,int RI,int LP,int RP)
{
cout<<Post[RP];
int MD=In.find(Post[RP]);//在中序遍历寻找root节点的位置
if(MD>LI)
{
Work(LI,MD-1,LP,LP+MD-LI-1);
     //遍历左子树
    }
if(MD<RI)
{
Work(MD+1,RI,LP+MD-LI,RP-1);
     //遍历右子树
}
} int main()
{
cin>>In>>Post;
Work(0,In.length()-1,0,Post.length()-1);
return 0;
}

[2001年NOIP普及组] 求先序排列的更多相关文章

  1. 2001年NOIP普及组复赛题解

    题目涉及算法: 数的计算:动态规划: 最大公约数和最小公倍数问题:质因数分解: 求先序排列:递归: 装箱问题:动态规划(纯0-1背包问题) 数的计算 题目链接:https://www.luogu.or ...

  2. [NOIP普及组2001]最大公约数和最小公倍数问题

    目录 链接 博客链接 题目链接 题目内容 题目描述 格式 输入 输出 数据 样例 输入 输出 说明 题目名称:最大公约数和最小公倍数问题 来源:2001年NOIP普及组 链接 博客链接 CSDN 洛谷 ...

  3. 求先序排列(NOIP2001&NOIP水题测试(2017082301))

    题目链接:求先序排列 这道题讲白了,就是数的构造,然后遍历. 思路大致是这样: 我们先通过后序遍历,找到当前区间的根,然后在中序遍历中找到根对应的下标,然后就可以分出左右子树,建立当前根与左右子树根的 ...

  4. codevs——1013 求先序排列

    1013 求先序排列 2001年NOIP全国联赛普及组  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 给出 ...

  5. 如何求先序排列和后序排列——hihocoder1049+洛谷1030+HDU1710+POJ2255+UVA548【二叉树递归搜索】

    [已知先序.中序求后序排列]--字符串类型 #1049 : 后序遍历 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Ho在这一周遇到的问题便是:给出一棵二叉树的前序和 ...

  6. 2016.10.7初中部上午NOIP普及组比赛总结

    2016.10.7初中部上午NOIP普及组比赛总结 这次的题还可以,重新入了比赛的前十. 进度: 比赛:90+10+70+30=200 改题:AC+AC+AC+AC=AK 找试场 这题很简单,但是被欺 ...

  7. 2016.9.24初中部上午NOIP普及组比赛总结

    2016.9.24初中部上午NOIP普及组比赛总结 2016.09.24[初中部 NOIP普及组 ]模拟赛 其实这次我没比赛,早上去参加亲子活动去了. 不过在下午我做完了所有的题,感觉还好. 进度 现 ...

  8. [蓝桥杯]ALGO-20.算法训练_求先序排列

    问题描述 给出一棵二叉树的中序与后序排列.求出它的先序排列.(约定树结点用不同的大写字母表示,长度<=). 输入格式 两行,每行一个字符串,分别表示中序和后序排列 输出格式 一个字符串,表示所求 ...

  9. 题解 P1030 【求先序排列】

    题解 P1030 [求先序排列] 旧题新解~ 今天做这个题,发现还是没有AC,于是滚回来用了一大堆数据结构A了这个题目,好像复杂度还挺高...... #include <iostream> ...

  10. 2321. 【NOIP普及组T1】方程

    2321. [NOIP普及组T1]方程 时间限制: 1000 ms  空间限制: 262144 KB 题目描述

随机推荐

  1. win10 优化关键字

    powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61 通知和操作 自动维护 存储 个性化 透明效果 启动 登录选项 更新或重启后 ...

  2. 「postOI」Cross Swapping

    题意 给出一个 \(n\times n\) 的矩阵 \(A\),你可以进行下述操作任意多次:指定整数 \(k\)(\(1\le k\le n\)),使 \(A_{ni}\) 与 \(A_{in}\) ...

  3. Ubuntu 20.04 :“a start job is running for hold until boot process finishes”

    A start job is running for Hold until boot process finishes up (xxx min xxx s/no limit) ubuntu20.04开 ...

  4. Visual Studio 安装时,共享组件、工具和SDK的路径无法更改解决方法

    Visual Studio 安装时,共享组件.工具和SDK的路径无法更改解决方法 解决方案: 找到电脑中Visual Studio 2019或其他版本的VS 的注册表,删除共享组件.工具和 SDK 的 ...

  5. PySide6之初级使用

    背景介绍pyside6提供了Qt6的Python侧API. 在GUI程序撰写方面, 笔者不太喜欢频繁的编译过程, 倾向于随时更改代码即时查看效果. 因此, 推荐在简单应用的情况下使用pyside6, ...

  6. UITextView布局不是从0开始的问题

    ///去掉padding UITextView.textContainer.lineFragmentPadding = 0; UITextView.textContainerInset = UIEdg ...

  7. Outlook配置文件位置

    [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles ...

  8. 读后笔记 -- Python 全栈测试开发 Chapter9:Postman + Newman 实现接口自动化

    9.1 Postman 工具 9.1.4 Postman 基本操作 1. Get 请求 GET 请求的参数通过 Params 设置,最后出现在 url 地址栏上,拼接在 API 后面.  2. Pos ...

  9. DevExpress.XtraEditors.ComboBoxEdit 只能选择不能在里面 输入数据

    DevExpress.XtraEditors.ComboBoxEdit 只能选择不能在里面 输入数据 combboxEdit.propoties.textEditStyle=DisableTextEd ...

  10. Linux上的I2C基础知识

    Linux上的I2C基础知识 什么是I2C I2C(Inter-Integrated Circuit,eye-squared-C),也称为 I2C 或 IIC,是一种同步.多控制器/多目标(主/从). ...