文章

20

粉丝

86

获赞

2

访问

4.6k

头像
二叉树的后序序列 题解:
799 VIP
P4215
发布于2024年3月12日 10:52
阅读数 189

#include<iostream>

using namespace std;
typedef struct node{
    char data;
    struct node *lchild,*rchild;
}*BitTree;
//创建二叉树
/*
    先序:A BEI DJ
    中序:EBI A DJ
    后序:EIB JD A
*/
//求先序
void CreateBitTree(string s1,string s2,BitTree &T)
{//默认s1为中序,s2为后序
    //空节点
    if(s1.size() == 0)
    {
        T=NULL;
        return;
    }

    T = new node;
    //根结点
    int pos = s1.find(s2[s2.size() - 1]);//找到 A 根结点 下标为3
    T->data = s1[pos];
    if(s1.size() == 1)
    {
        T->lchild = NULL;
        T->rchild = NULL;
        return ;
    }
    //中序:EBI A DJ
    //后序:EIB JD A
    //递归左子树
    string x= s1.substr(0,pos);//从0开始
  &...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发