http://poj.org/problem?id=2255

#include<cstdio>
#include <cstring>
using namespace std;
const int maxn = 27;
char pre[maxn],in[maxn];
char past[maxn];
void tre(int ps,int pe,int is,int ie,int& ind)
{
int lnum = strchr(in,pre[ps]) - in - is; if(lnum != 0)
{
tre(ps + 1,ps + 1 + lnum,is ,is + lnum,ind);
}
if(is + lnum + 1 != ie)
{
tre(ps + 1 + lnum,pe,is + lnum + 1 ,ie,ind);
}
past[ind++] = pre[ps];
}
int main()
{
while(scanf("%s%s",pre,in) == 2)
{
int ind = 0;
int len = strlen(pre);
tre(0,len,0,len,ind);
past[len] = 0;
printf("%s\n",past);
}
return 0;
}

POJ 2255 Tree Recovery 树的遍历,分治 难度:0的更多相关文章

  1. POJ 2255 Tree Recovery(根据前序遍历和中序遍历,输出后序遍历)

    题意:给出一颗二叉树的前序遍历和中序遍历的序列,让你输出后序遍历的序列. 思路:见代码,采用递归. #include <iostream> #include <stdio.h> ...

  2. POJ 2255 Tree Recovery 二叉树的遍历

    前序和中序输入二叉树,后序输出二叉树:核心思想只有一个,前序的每个根都把中序分成了两部分,例如 DBACEGF ABCDEFG D把中序遍历的结果分成了ABC和EFG两部分,实际上,这就是D这个根的左 ...

  3. poj 1741 Tree(树的点分治)

    poj 1741 Tree(树的点分治) 给出一个n个结点的树和一个整数k,问有多少个距离不超过k的点对. 首先对于一个树中的点对,要么经过根结点,要么不经过.所以我们可以把经过根节点的符合点对统计出 ...

  4. poj 2255 Tree Recovery 分治

    Tree Recovery Description Little Valentine liked playing with binary trees very much. Her favorite g ...

  5. POJ 2255. Tree Recovery

    Tree Recovery Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11939   Accepted: 7493 De ...

  6. poj 2255 Tree Recovery(求后序遍历,二叉树)

    版权声明:本文为博主原创文章,未经博主同意不得转载.vasttian https://blog.csdn.net/u012860063/article/details/37699219 转载请注明出处 ...

  7. POJ 2255 Tree Recovery && Ulm Local 1997 Tree Recovery (二叉树的前中后序遍历)

    链接:poj.org/problem?id=2255 本文链接:http://www.cnblogs.com/Ash-ly/p/5463375.html 题意: 分别给你一个二叉树的前序遍历序列和中序 ...

  8. POJ 2255 Tree Recovery——二叉树的前序遍历、后序遍历、中序遍历规则(递归)

    1.前序遍历的规则:(根左右) (1)访问根节点 (2)前序遍历左子树 (3)前序遍历右子树 对于图中二叉树,前序遍历结果:ABDECF 2.中序遍历的规则:(左根右) (1)中序遍历左子树 (2)访 ...

  9. Poj 2255 Tree Recovery(二叉搜索树)

    题目链接:http://poj.org/problem?id=2255 思路分析:根据先序遍历(如DBACEGF)可以找出根结点(D),其后为左右子树:根据中序遍历(如ABCDEFG),已知根结点(D ...

随机推荐

  1. mysql: 1045 access denied for user 'root'@'localhost' using password yes

    原因是:root的密码错误了. 解决思路:关闭mysql服务,重新启动mysql服务,启动mysql的时候,指定不需要校验密码.然后登陆mysql,修改密码,退出.再重新启动mysql服务. 1.关闭 ...

  2. Python学习笔记1—模块

    模块的使用 引用模块的两种形式 形式一: import module_name 形式二: from module1 import module11   (module11是module的子模块) 例: ...

  3. [js] 非常好的面试题,学习了。。

    原文链接:http://www.cnblogs.com/xxcanghai/p/5189353.html

  4. iOS 细碎知识整理

    1centerX,即x轴的中点 centery,即y轴的中点

  5. Matlab求齐次方程的解

    % 求Ax=0的解: r=rank(A): x=null(A,r) 求出来x的是归一化后的解.

  6. static final的理解

    static: static静态,可以修饰类,成员变量,成员方法,代码块.static修饰的成员变量和方法独立于该类的任何对象,也就是被类的所有成员共享,这要这个类被加载,虚拟机就能根据类名在运行时数 ...

  7. java语法体系

    乱写的不具备参考性,只是一个备忘录

  8. Hacker Technology

    扒一扒「黑客军团」中用到的黑客工具 黑客 (Hacker) - 知乎 nmap - 百科 NMAP - 官网  中文翻译 Havij sqlmap 熊猫烧香 懒人在思考 零基础如何学习 Web 安全? ...

  9. OI中的代码调试

    作为一位OIer,代码调试的能力必不可少. 今天梳理一下自己进行代码调试的方法,下面只是一些个人的总结. 代码的评价有三部分: 正确性 强健性 高效性 检查也应该从这三部分出发. [正确性] 打完代码 ...

  10. python 练习 28

    ython pass是空语句,是为了保持程序结构的完整性. pass 不做任何事情,一般用做占位语句. Python 语言 pass 语句语法格式如下: pass 实例: #!/usr/bin/pyt ...