在学习二叉树遍历的时候我们学习了三种遍历方法 前序 中序 后序
同时我们知道给定前序和中序、中序和后序我们可以还原二叉树,
记得当时只是在纸上画了一画。现在把当时的想法完成。
给定前序和中序生成二叉树。。。
#include <iostream>
/**
在学习二叉树遍历的时候我们学习了三种遍历方法 前序 中序 后序
同时我们知道给定前序和中序、中序和后序我们可以还原二叉树,
记得当时只是在纸上画了一画。现在把当时的想法完成。
给定前序和中序还原二叉树。。。
*/
using namespace std;
typedef struct node
{
char value;
struct node *lh;
struct node *rh;
}node;
node* buildtree(char pre[],char mid[],int n) //n为子树结点个数
{
if(n == 0) return 0;
node *p = new node;
p->value = pre[0];
int i;
fo