由二叉树的前序遍历(后序遍历)和中序遍历输出后序遍历(前序遍历)
来源:互联网 发布:淘宝网毛绒绒的衣服 编辑:程序博客网 时间:2024/05/22 03:25
由后序遍历和中序遍历输出前序遍历:
#include<cstdio>#include<cstring>#include<iostream>using namespace std;int i;void build(int n,string s1,string s2,char* ans){if(n<=0) return;int p=s2.find(s1[n-1]); ans[i++]=s1[n-1]; build(p,s1.substr(0,p),s2.substr(0,p),ans); build(n-p-1,s1.substr(p,n-p-1),s2.substr(p+1,n-p-1),ans);}int main(){ string s1,s2; char ans[26]; while(cin>>s1>>s2) { i=0; memset(ans,0,sizeof(ans)); int n=s1.length(); build(n,s1,s2,ans); ans[n]='\0'; printf("%s\n",ans); }}由前序遍历和中序遍历输出后序遍历:
#include<cstdio>#include<cstring>#include<iostream>using namespace std;void build(int n,string s1,string s2,char* ans){if(n<=0) return;int p=s2.find(s1[0]);ans[n-1]=s1[0]; build(p,s1.substr(1,p),s2.substr(0,p),ans); build(n-p-1,s1.substr(p+1,n-p-1),s2.substr(p+1,n-p-1),ans+p);}int main() { string s1,s2; char ans[26]; while(cin>>s1>>s2) { memset(ans,0,sizeof(ans)); int n=s1.length(); build(n,s1,s2,ans); ans[n]='\0'; printf("%s\n",ans); } }
0 0
- 由二叉树的前序遍历(后序遍历)和中序遍历输出后序遍历(前序遍历)
- 二叉树的遍历:前序遍历、中序遍历和后序遍历
- 阿里笔试-二叉树由前序遍历和中序遍历推导后序遍历
- 二叉树的遍历(前序遍历、中序遍历、后序遍历)
- 二叉树的遍历 前序遍历 中序遍历 后序遍历
- POJ 2255 二叉树由前序遍历中序遍历得到后序遍历
- 二叉树的前序遍历,中序遍历和后序遍历(c#)
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- C++数据结构--二叉树的建立,前序遍历,中序遍历和后序遍历
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 二叉树的前序遍历、中序遍历和后序遍历及其算法
- 根据树的前序遍历和中序遍历构造树,输出后序遍历
- 由前序和中序遍历建立二叉树并后序遍历输出二叉树
- 根据前序遍历、中序遍历构建二叉树,并后序遍历输出。
- 构造排序二叉树并输出前序遍历、中序遍历、后序遍历
- 由二叉树的前序遍历和后续遍历结果还原二叉树,并后序遍历打印
- 作业:数字转化人民币大写的一个类
- 关于:[Struts2]Caused by: com.opensymphony.xwork2.inject.DependencyException:
- 设置openstack计算节点免ssh密码相互访问
- 最短路
- 怎么样阻止a标签的默认行为
- 由二叉树的前序遍历(后序遍历)和中序遍历输出后序遍历(前序遍历)
- MySQL安装脚本
- 第十三周项目-阅读程序-3
- 云计算与大数据概述
- 修改 Android 5.1 默认设置
- NYOJ 1233 差值
- 微博营销5——如何找到你的潜在客户
- 【Asp.Net】—-开启网页设计的新征程
- mysql5.7.9安装步骤及如何将原来数据库中的数据复制到新的数据库中使用