zoukankan      html  css  js  c++  java
  • 二叉查找树——A1099.Build a Binary Search Tree(30) 非完全二叉查找树,但是给出了左右孩子节点,利用左右孩子节点构建二叉查找树,与上一题形成对比

    #include <bits/stdc++.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <queue>
    using namespace std;
    const int maxn = 110;
    struct Node{
        int data;
        int lchild;
        int rchild;
    }Node[maxn];
    int n,in[maxn],num = 0;
    void inOrder(int root){
        if(root == -1){
            return;
        }
        inOrder(Node[root].lchild);
        Node[root].data = in[num++];
        inOrder(Node[root].rchild);
    }
    void BFS(int root){
        queue<int> q;
        q.push(root);
        num = 0;
        while(!q.empty()){
            int now = q.front();
            q.pop();
            printf("%d",Node[now].data);
            num++;
            if(num < n){
                printf(" ");
            }
            if(Node[now].lchild != -1){
                q.push(Node[now].lchild);
            }
            if(Node[now].rchild != -1){
                q.push(Node[now].rchild);
            }
        }
    }
    int main(){
        scanf("%d",&n);
        int temp;
        for(int i =0;i<n;++i){
            scanf("%d%d",&Node[i].lchild,&Node[i].rchild);
        }
        for(int i=0;i<n;++i){
            scanf("%d",&temp);
            in[i] = temp;
        }
        sort(in,in+n);
        inOrder(0);
        BFS(0);
        system("pause");
        return 0;
    }
  • 相关阅读:
    window.onload和DOMContentLoaded的区别
    存储
    JSONP的实现原理
    对于一个无线下拉加载图片的页面,如何给每个图片绑定事件
    事件冒泡
    通用的事件绑定函数
    拆解url的各部分
    如何检测浏览器的类型
    DOM节点操作
    es6基本用法
  • 原文地址:https://www.cnblogs.com/JasonPeng1/p/12240209.html
Copyright © 2011-2022 走看看