每日一题(L2-011):玩转二叉树--建树+层序遍历

与L2-006近乎相同,先建树,然后遍历

#include<bits/stdc++.h>
using namespace std;
int in[35];
int pre[35];
typedef struct Tree{
    int num;
    Tree* left;
    Tree* right;
}T;

T * build(int in1,int in2,int pre1,int pre2){
    T * t=new T;
    t->num=pre[pre1];
    int key=pre[pre1];
    int i=0;
    for(i=in1;i<=in2;i++){
        if(in[i]==key){
        break;
        }
    }
    int num_node=i-in1;
    if(i!=in1){
    t->left=build(in1,i-1,pre1+1,pre1+num_node);
    }
    if(i!=in2){
    t->right=build(i+1,in2,pre1+num_node+1,pre2);
    }
    return t;
}
void visit(T * t){
    if(t == NULL){
        return ;
    }
    queue<T*> q;
    q.push(t);
    while(!q.empty()){
        T* tt=q.front();
        cout<<tt->num;
        if(tt->right  != NULL){
           q.push(tt->right);
        }
        if(tt->left  != NULL){
           q.push(tt->left);
        }
        q.pop();
        if(!q.empty()){
            cout<<' ';
        }
    }
    
}
int main(){
    int n;
    cin>>n;
    for(int i=0;i<n;i++){
    cin>>in[i];
    }
    for(int i=0;i<n;i++){
    cin>>pre[i];
    }
    T * root=build(0,n-1,0,n-1);
    visit(root);
    return 0;
}

相关推荐

  1. L2-011 (数组建树

    2024-04-20 23:36:04       36 阅读
  2. 2024.2.15力扣每日——2

    2024-04-20 23:36:04       35 阅读
  3. 【C++】每日 103 的锯齿形

    2024-04-20 23:36:04       34 阅读
  4. 2024.2.17力扣每日——N

    2024-04-20 23:36:04       34 阅读
  5. 94 . 的中 -- 2024.2.10 LeetCode每日

    2024-04-20 23:36:04       58 阅读
  6. 2024.2.10力扣每日——的中

    2024-04-20 23:36:04       46 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-20 23:36:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-20 23:36:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-20 23:36:04       82 阅读
  4. Python语言-面向对象

    2024-04-20 23:36:04       91 阅读

热门阅读

  1. 使用JWT、Redis + token实现用户登录的两种方式。

    2024-04-20 23:36:04       31 阅读
  2. Android 13 有线以太网静态ip保存逻辑梳理分析

    2024-04-20 23:36:04       28 阅读
  3. 使用Python实现超参数调优

    2024-04-20 23:36:04       34 阅读
  4. Swift知识点 --- AnyView

    2024-04-20 23:36:04       39 阅读
  5. hyref 开发者推荐项目

    2024-04-20 23:36:04       35 阅读
  6. React Flow浏览器默认事件失效问题解决

    2024-04-20 23:36:04       33 阅读
  7. npm 更改国内镜像的方法

    2024-04-20 23:36:04       38 阅读
  8. 等保测评:网络安全法规框架下的关键合规实践

    2024-04-20 23:36:04       39 阅读
  9. vue--样式绑定--样式切换方法

    2024-04-20 23:36:04       28 阅读
  10. Rust 构建跨平台 GUI 的新选择

    2024-04-20 23:36:04       24 阅读