zoukankan      html  css  js  c++  java
  • 二叉树遍历 A1086.Tree Traversals Again(25) (转化为给定前序和中序列,求后序)

    #include <bits/stdc++.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <queue>
    using namespace std;
    const int maxn = 50;
    struct node{
        int data;
        node* lchild;
        node* rchild;
    };
    int pre[maxn],in[maxn],post[maxn];
    int n;
    node* create(int preL,int preR,int inL,int inR){
        if(preL > preR){
            return NULL;
        }
        node* root = new node;
        int temp = pre[preL];
        root->data = temp;
        int k;
        for(int i = inL;i<=inR;++i){
            if(in[i] == temp){
                k = i;
            }
        }
        int numLeft = k - inL;
        root->lchild = create(preL+1,preL + numLeft,inL,k - 1);
        root->rchild = create(preL + numLeft + 1,preR,k+1,inR);
        return root;
    }
    int num = 0;
    void postOrder(node *root){
        if(root == NULL){
            return;
        }
        postOrder(root->lchild);
        postOrder(root->rchild);
        printf("%d",root->data);
        num++;
        if(num < n){
            printf(" ");
        }
    }
    
    int main(){
        scanf("%d",&n);
        char str[5];
        stack<int> st;
        int x,preList,inList;
        preList = 0;
        inList = 0;
        for(int i=0;i< 2*n;++i){
            scanf("%s",str);
            if(strcmp(str,"Push")==0){
                scanf("%d",&x);
                st.push(x);
                pre[preList] = x;
                preList++;
            }else{
                x = st.top();
                st.pop();
                in[inList] = x;
                inList++;
            }
        }
        node* root = create(0,n-1,0,n-1);
        postOrder(root);
        system("pause");
        return 0;
    }

     

  • 相关阅读:
    函数基础
    全局变量与类似配置文件的模块文件
    global语句(python学习手册422页)
    作用域实例
    变量名解析:LEGB原则
    作用域
    第三方库安装方法
    s[-1]和s[len(s)-1]
    查找特定后缀的文件
    logging日志管理-将日志写入文件
  • 原文地址:https://www.cnblogs.com/JasonPeng1/p/12231656.html
Copyright © 2011-2022 走看看