一.根据扩展后序序列求先序
描述
给定一棵二叉树的扩展后序序列,试构造这个二叉树,并输出这个二叉树的先序遍历结果。
输入描述
一行字符,即扩展后序序列,字符只包含小写字母和“.”,长度不超过255
输出描述
输出对应的先序遍历结果。
样例输入 1
..a..bc.d
样例输出 1
dcab
AC代码:
#include<bits/stdc++.h>
using namespace std;
struct node{
char value;
int left,right;
}data[256];
string postoder;
int pos;
int num=1;
int buildTree(string postoder){
if(pos<0){
return 0;
}
char dot=postoder[pos--];
if(dot=='.'){
return 0;
}
int sub=num++;
data[sub].value=dot;
data[sub].right=buildTree(postoder);
data[sub].left=buildTree(postoder);
return sub;
}
voi