Cod sursa(job #981475)

Utilizator classiusCobuz Andrei classius Data 7 august 2013 11:41:59
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.93 kb
#include <fstream>

using namespace std;

ifstream f("algsort.in");
ofstream g("algsort.out");

struct node;

struct node{
    int x;
    node *left,*right;
};
typedef node *bin_tree;

void insert(bin_tree bs,int x)
{
    if(x<=bs->x){
        if(!bs->left){
            bs->left=new node;
            bs->left->x=x;
            return;
        }else insert(bs->left,x);
    }else{
        if(!bs->right){
            bs->right=new node;
            bs->right->x=x;
            return;
        }else insert(bs->right,x);
    }
    return;
}

void bint_sort(bin_tree bs)
{
    if(bs->left)
        bint_sort(bs->left);
    g<<bs->x<<" ";
    if(bs->right)
        bint_sort(bs->right);
    return;
}

int main()
{
    bin_tree bs1=0;
    int n,x;
    f>>n;

    f>>x;
    bs1=new node;
    bs1->x=x;

    for(int i=2;i<=n;i++){
        f>>x;
        insert(bs1,x);
    }

    bint_sort(bs1);

    return 0;
}