Pagini recente » Cod sursa (job #1825429) | Cod sursa (job #1828085) | Cod sursa (job #2182142) | Cod sursa (job #1797826) | Cod sursa (job #2336317)
#include <fstream>
#include <math.h>
#include <vector>
#include <set>
#include <algorithm>
#include <cstring>
//#include <unordered_map>
#include <iomanip>
#include <time.h>
#include <stdio.h>
#include <bitset>
#include <map>
#include <ctime>
#include <stdlib.h>
#define MAX 500000000000
//#include <iostream>
#include <deque>
//#include "PEZai.h"
//#include <Tlhelp32.h>
using namespace std;
//ifstream cin("jocul.in");
//ofstream cout("jocul.out");
ifstream cin("algsort.in");
ofstream cout("algsort.out");
#define UNDEFINED 32432523
struct node{
int x;
node *left, *right;
};
node *tree;
int n, x[500004];
node *addNode(node *tree, int a) {
if(tree == NULL) {
node *ver = new node;
ver->x = a;
ver->left = NULL;
ver->right = NULL;
return ver;
}
if(a < tree->x)
tree->left = addNode(tree->left, a);
else
tree->right = addNode(tree->right, a);
}
void traverse(node *tree) {
if(tree == NULL) {
return ;
}
traverse(tree->left);
cout << tree->x << " ";
traverse(tree->right);
}
int main()
{
cin >> n;
for(int i = 0; i < n; ++i) {
//scanf("%d", &x[i]);
cin >> x[i];
}
random_shuffle(x, x + n);
for(int i = 0; i < n; i++) {
tree = addNode(tree, x[i]);
}
traverse(tree);
}