存code

#include<cstdio> 
#include<algorithm>
#include<iostream>
using namespace std;
struct node
{
    int val;
    int left;
    int right;
};
node tree[10010];
int tail;
int data[10010];
int read()
{
    int s=0,f=1;
    char in=getchar();
    while(in<'0'&&in>'9')
    {
        if(in=='-')
            f=-1;
        in=getchar();
    }
    while(in>='0'&&in<='9')
    {
        s=(s<<1)+(s<<3)+in-'0';
        in=getchar();
    }
    return s*f;
}
int build(int left,int right)
{
    if(left>right)
        return -1;
    int mid=(left+right)>>1;
    int num=tail;
    tree[num].value=data[mid];
    tree[num].left=build(left,mid-1);
    tree[num].right=build(mid+1,right);
} 
int main()
{
    tail=1;
    int n=read();
    for(int i=1;i<=n;i++)
        data[i]=read();
    sort(data+1,data+1+n);
    build(1,n);
    visit(1);
}

猜你喜欢

转载自www.cnblogs.com/Lance1ot/p/8858762.html