数据结构作业
采用C++完成
/**题目要求
已知二叉树的中序遍历序列 char ino[]以及后序遍历序列char pst[],请用算法生成该二叉树(用二叉链表的形式存储)
*/
#include<stdio.h>
#include<stdlib.h>
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define STACK_INIT_SIZE 100 // 存储空间初始分配量
#define STACKINCREMENT 10 // 存储空间分配增量
typedef int Status;
//typedef BiTree BiTree;
typedef char ElemType;
typedef char ElemType;
typedef struct BiTNode{
ElemType data;
struct BiTNode *lchild,*rchild;//左右孩子指针
} BiTNode,*BiTree;
struct SqStack
{
BiTree *base; // 在栈构造之前和销毁之后,base的值为NULL
BiTree *top; // 栈顶指针
int stacksize; // 当前已分配的存储空间,以元素为单位
}; // 顺序栈
Status InitStack(SqStack &S)
{
// 构造一个空栈S,该栈预定义大小为STACK_INIT_SIZE
S.base = (BiTree *)malloc(STACK_INIT_SIZE * sizeof(BiTree));
if(!S.base)
return 0;
S.top =