码迷,mamicode.com
首页 > 其他好文 > 详细

前序和中序,求出后序遍历

时间:2017-03-02 19:29:54      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:logs   const   c++   include   void   div   ring   pre   can   

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=4e3+20;
int n;
string a,b;//a,b分别为前序和中序遍历结果 
//后序:左子树后序+右子树后序+根 
void dfs(char *a,char* b,int len)
{
	if(len<1) return;
	int i=0;
	while(b[i]!=a[0]) i++;
	dfs(a+1,b,i);
	dfs(a+i+1,b+i+1,len-i-1);
	cout<<a[0];
}
int main()
{
	char a[N],b[N];
	scanf("%s%s",a,b);
	n=strlen(a);
	dfs(a,b,n);
	cout<<endl;
	return 0;
}

  

前序和中序,求出后序遍历

标签:logs   const   c++   include   void   div   ring   pre   can   

原文地址:http://www.cnblogs.com/HIKARI1149/p/6492094.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!