Pagini recente » Cod sursa (job #2978195) | Cod sursa (job #914996) | Cod sursa (job #1707492) | Cod sursa (job #492697) | Cod sursa (job #1703125)
#include <cstdio>
const int MAX_N = 500000;
int v[ MAX_N ];
void qsort(int begin, int end) {
int b, e, pivot, aux;
b = begin;
e = end;
pivot = v[(b + e) / 2];
while(b <= e) {
while(v[b] < pivot) b++;
while(v[e] > pivot) e--;
if(b<=e) {
aux = v[b];
v[b] = v[e];
v[e] = aux;
b++;
e--;
}
}
if(begin < e)
qsort(begin, e);
if(b < end)
qsort(b, end);
}
int main() {
int n, i;
//nu folosesc freopen des,dar cand il folosesc sunt pe telefon
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
scanf("%d", &n);
for(i = 0; i < n; i++)
scanf("%d", &v[i]);
qsort(0, n - 1);
for(i = 0; i < n; i++)
printf("%d ", v[i]);
}