Cod sursa(job #2078863)

Utilizator RaduXD1Nicolae Radu RaduXD1 Data 30 noiembrie 2017 09:32:29
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 1 kb
#include <fstream>
#include <bitset>

using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int i, n, a;

struct nod{
    int info;
    nod *st;
    nod *dr;
};
nod *baza;

void creaza(nod *lvl)
{
    nod *urm;
    if(a<=lvl->info)
        urm=lvl->st;
    else
        urm=lvl->dr;
    if(urm==NULL)
    {
        urm=new nod;
        urm->info=a;
        urm->dr=NULL;
        urm->st=NULL;
        if(a<=lvl->info)
            lvl->st=urm;
        else
            lvl->dr=urm;
    }
    else
        creaza(urm);
}

void afiseaza(nod *lvl)
{
    if(lvl!=NULL)
    {
        afiseaza(lvl->st);
        fout<<lvl->info<<" ";
        afiseaza(lvl->dr);
        delete lvl;
    }
}

int main()
{
    fin>>n;
    fin>>a;
    baza=new nod;
    baza->info=a;
    baza->dr=NULL;
    baza->st=NULL;
    for(i=2;i<=n;i++)
    {
        fin>>a;
        creaza(baza);
    }
    afiseaza(baza);
    fin.close();
    fout.close();
    return 0;
}