前序中序求后序,中序后续求前序
程序员文章站
2022-05-19 20:55:54
...
求后续
#include <bits/stdc++.h>
using namespace std;
int const maxn=1100;
int a[8][8];
int vis[8];
vector<string> ans;
void f(string ins,string post)
{
if(ins.size()==0) return ;
char node =post[post.size()-1];
cout<<node;
post = post.substr(0,post.size()-1);
int po=ins.find(node);
string post1 = post.substr(0,po);
string post2 = post.substr(po);
string ins1 = ins.substr(0,po);
string ins2 = ins.substr(po+1);
f(ins1,post1);
f(ins2,post2);
}
int main()
{
string s1,s2;
while(cin>>s1>>s2)
{
f(s1,s2);
cout<<endl;
}
}
求前序
#include <bits/stdc++.h>
using namespace std;
int const maxn=1100;
int a[8][8];
int vis[8];
vector<string> ans;
void f(string pre,string ins)
{
if(pre.size()==0) return ;
char node =pre[0];
pre = pre.substr(1);
int po=ins.find(node);
string pre1 = pre.substr(0,po);
string pre2 = pre.substr(po);
string ins1 = ins.substr(0,po);
string ins2 = ins.substr(po+1);
f(pre1,ins1);
f(pre2,ins2);
cout<<node;
}
int main()
{
string s1,s2;
while(cin>>s1>>s2)
{
f(s1,s2);
cout<<endl;
}
}
上一篇: C++ 随机数生成的2种方法--生成指定范围内的随机数
下一篇: ijkplayer框架深入剖析
推荐阅读
-
Java实现的二叉树常用操作【前序建树,前中后递归非递归遍历及层序遍历】
-
Python实现二叉树前序、中序、后序及层次遍历示例代码
-
Python利用前序和中序遍历结果重建二叉树的方法
-
PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
-
[PHP] 算法-根据前序和中序遍历结果重建二叉树的PHP实现
-
c/c++ 用前序和中序,或者中序和后序,创建二叉树
-
Python实现二叉树前序、中序、后序及层次遍历示例代码
-
【算法】二叉树的前序、中序、后序、层序遍历和还原。
-
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
-
L2-006 树的遍历 (后序中序求层序)