洛谷P1030 求先序排列

洛谷P1030 求先序排列

[NOIP2001 普及组] 求先序排列

文章目录

题目描述

给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,且二叉树的节点个数 \\le 8)。

输入格式

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

输出格式

共一行一个字符串,表示一棵二叉树的先序。

样例 #1

样例输入 #1

复制代码
BADC
BDCA

样例输出 #1

复制代码
ABCD

提示

【题目来源】

NOIP 2001 普及组第三题

正确代码

c++ 复制代码
#include <bits/stdc++.h>
using namespace std;
/**
  *author: 枫飘长安
  *date: 2024/4/14
  *fileName: P1030.cpp
  *description: TODO
  **/
typedef long long ll;
const int MAXN = 1e6+10;

string inord,postord;

void beforeOrder(string in, string after);

int main (){
    cin >> inord >> postord;
    beforeOrder(inord,postord);
    return 0;
}

void beforeOrder(string in, string after) {
    if (in.size() == 0) return;
    char root = after[after.size()-1];
    cout << root;
    int pos = in.find(root);
    beforeOrder(in.substr(0,pos),after.substr(0,pos));
    beforeOrder(in.substr(pos+1),after.substr(pos,after.size()-pos-1));
}
相关推荐
大翻哥哥4 分钟前
Python 2025:量化金融与智能交易的新纪元
开发语言·python·金融
~|Bernard|7 分钟前
在 PyCharm 里怎么“点鼠标”完成指令同样的运行操作
算法·conda
战术摸鱼大师9 分钟前
电机控制(四)-级联PID控制器与参数整定(MATLAB&Simulink)
算法·matlab·运动控制·电机控制
Christo312 分钟前
TFS-2018《On the convergence of the sparse possibilistic c-means algorithm》
人工智能·算法·机器学习·数据挖掘
weixin_4378309440 分钟前
使用冰狐智能辅助实现图形列表自动点击:OCR与HID技术详解
开发语言·javascript·ocr
鹿鹿学长1 小时前
2025年全国大学生数学建模竞赛(C题) 建模解析|婴儿染色体数学建模|小鹿学长带队指引全代码文章与思路
c语言·开发语言·数学建模
好家伙VCC1 小时前
数学建模模型 全网最全 数学建模常见算法汇总 含代码分析讲解
大数据·嵌入式硬件·算法·数学建模
zhousenshan1 小时前
Python爬虫常用框架
开发语言·爬虫·python
利刃大大2 小时前
【高并发内存池】五、页缓存的设计
c++·缓存·项目·内存池
DKPT2 小时前
Java内存区域与内存溢出
java·开发语言·jvm·笔记·学习