确定树
1.通过中序遍历和先序遍历可以确定一棵树
2.通过中序遍历和后序遍历可以确定一棵树
算法
1.通过先序遍历找到根节点A 根据A再在中序遍历中找到左子树和右子树
2.先序遍历在A的左子树中找到左子树的根节点,转步骤1
3.先序遍历在A的右子树中找到右子树的根节点,转步骤1
#法创建树
BiTNode* CreateBiThrTree(BiTNode *T)
{
BiTNode *node = NULL;
BiTNode *pL = NULL;
BiTNode *pR = NULL;
char h;
cin>>h;
if(h=='#')
{
return NULL;
}
else
{
node=(BiTNode*)malloc(sizeof(BiTNode));
memset(node,0,sizeof(BiTNode));
node->data = h;//生成根节点
pL = CreateBiThrTree(T->lchild);//递归构造左子树
if(pL!=NULL)
{
node -> lchild = pL;
}
else
{
node->lchild = NULL;
}
pL = CreateBiThrTree(T->rchild);//递归构造右子树
if(pR!=NULL)
{
node -> rchild = pR;
}
else
{
node->rchild = NULL;
}
}
return node;
}