Pagini recente » Cod sursa (job #2074641) | Cod sursa (job #3212329) | Cod sursa (job #1860132) | Cod sursa (job #2465002) | Cod sursa (job #3237755)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream fin ("algsort.in");
ofstream fout("algsort.out");
struct nod {
int inf;
nod *st;
nod *dr;
};
nod *r;
int n, i, x;
void insereaza(nod *&r, int x) {
if (r == NULL) {
r = new nod;
r->inf = x;
r->st = r->dr = NULL;
} else {
if (r->inf < x)
insereaza(r->dr, x);
else
insereaza(r->st, x);
}
}
void afiseaza(nod *r) {
if (r) {
afiseaza(r->st);
fout<<r->inf<<" ";
afiseaza(r->dr);
}
}
int main() {
ifstream fin ("algsort.in");
ofstream fout("algsort.out");
fin>>n;
vector<int> v;
for (i=1;i<=n;i++) {
fin>>x;
v.push_back(x);
}
random_shuffle(v.begin(), v.end());
for (i=0;i<n;i++) {
insereaza(r, v[i]);
}
afiseaza(r);
return 0;
}