【2001NOIP普及组】T3. 求先序排列 试题解析

本文涉及的产品
云解析DNS-重点域名监控,免费拨测 20万次(价值200元)
简介: 【2001NOIP普及组】T3. 求先序排列 试题解析

【2001NOIP普及组】T3. 求先序排列  试题解析

时间限制: 1000 ms         内存限制: 65536 KB

【题目描述】

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

【输入】

一行,一棵二叉树的中序与后序排序,中间用一个空格隔开。

【输出】

它的先序排列

【输入样例】

BADC BDCA

【输出样例】

ABCD

试题解析:递归  树  中序、后序转先序

1. #include<bits/stdc++.h>
2. using namespace std;
3. string a,b;
4. void build(int l1,int r1,int l2,int r2){
5.  int m=a.find(b[r2]);
6.  int n=b.find(b[r2]);
7.  cout<<b[r2];
8.  if(m>l1) build(l1,m-1,n-1,m-1);
9.  if(m<r2) build(m+1,r1,m,r2-1);
10. } 
11. void build(string mid,string back)
12. {
13.   int m = mid.find(back[back.size()-1]);
14.   cout<<back[back.size()-1];
15.   if(m>0) build(mid.substr(0,m),back.substr(0,m));
16.   if(m+1<mid.size()) build(mid.substr(m+1),back.substr(m,back.size()-m-1));
17. }
18. int main()
19. {
20.   cin>>a>>b;
21.   //build(0,a.size()-1,0,b.size()-1);
22.   build(a,b);
23.   return 0;
24. }


相关文章
从排列字符串到排列序列:解析增减字符串匹配问题
题目要求根据给定的字符串 s,构造一个排列序列 perm,其中排列序列中的数字满足以下规则: 如果 perm[i] < perm[i + 1],则对应的字符为 'I'; 如果 perm[i] > perm[i + 1],则对应的字符为 'D'。 我们需要根据字符串 s 中的字符,构造满足上述规则的排列序列 perm。
122 0
|
C++
从排列字符串到排列序列:解析增减字符串匹配问题
在这篇文章中,我们将解决 LeetCode 题目 "942. 增减字符串匹配",这是一个简单级别的题目,涉及到排列字符串和排列序列的转换。我们将详细讨论问题背景、解题思路、代码实现,同时进行必要的知识点罗列和总结。
77 0
【2012NOIP普及组】T1. 质因数分解 试题解析
【2012NOIP普及组】T1. 质因数分解 试题解析
226 0
☆打卡算法☆LeetCode 31、下一个排列 算法解析
“将数组序列重新排列成下一个更大的排列,如果不存在下一个更大的排列,则将数组排列成最小的排列。”
|
9月前
|
算法 测试技术 C语言
深入理解HTTP/2:nghttp2库源码解析及客户端实现示例
通过解析nghttp2库的源码和实现一个简单的HTTP/2客户端示例,本文详细介绍了HTTP/2的关键特性和nghttp2的核心实现。了解这些内容可以帮助开发者更好地理解HTTP/2协议,提高Web应用的性能和用户体验。对于实际开发中的应用,可以根据需要进一步优化和扩展代码,以满足具体需求。
866 29
|
9月前
|
前端开发 数据安全/隐私保护 CDN
二次元聚合短视频解析去水印系统源码
二次元聚合短视频解析去水印系统源码
355 4
|
9月前
|
JavaScript 算法 前端开发
JS数组操作方法全景图,全网最全构建完整知识网络!js数组操作方法全集(实现筛选转换、随机排序洗牌算法、复杂数据处理统计等情景详解,附大量源码和易错点解析)
这些方法提供了对数组的全面操作,包括搜索、遍历、转换和聚合等。通过分为原地操作方法、非原地操作方法和其他方法便于您理解和记忆,并熟悉他们各自的使用方法与使用范围。详细的案例与进阶使用,方便您理解数组操作的底层原理。链式调用的几个案例,让您玩转数组操作。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
9月前
|
移动开发 前端开发 JavaScript
从入门到精通:H5游戏源码开发技术全解析与未来趋势洞察
H5游戏凭借其跨平台、易传播和开发成本低的优势,近年来发展迅猛。接下来,让我们深入了解 H5 游戏源码开发的技术教程以及未来的发展趋势。

推荐镜像

更多
  • DNS