Pagini recente » Cod sursa (job #1615723) | Cod sursa (job #2673157) | Cod sursa (job #1125105) | Cod sursa (job #1457404) | Cod sursa (job #2181571)
#include <bits/stdc++.h>
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
int a[500000],n;
void read(){
in >> n;
for(int i=0;i<n;i++)
in >> a[i];
}
void quick(int inf, int sup) {
int x, i, j, t;
i = inf;
j = sup;
x = a[(i + j) / 2];
do {
while ( (i < sup) && (a[i] < x) ) i++;
while ( (j > inf) && (a[j] > x) ) j--;
if ( i <= j ) {
t = a[i];
a[i] = a[j];
a[j] = t;
i++;
j--;
}
} while ( i <= j );
if ( inf < j ) quick(inf, j);
if ( i < sup ) quick(i, sup);
}
void draw(){
for(int i=0;i<n;i++)
out << a[i] << ' ';
}
int main()
{
read();
quick(0,n-1);
draw();
return 0;
}