Pagini recente » Cod sursa (job #1831420) | Cod sursa (job #2379559) | Cod sursa (job #2378854) | Cod sursa (job #1518198) | Cod sursa (job #645655)
Cod sursa(job #645655)
#include <stdio.h>
#define NMAX 500000
int v[NMAX + 5];
void swap(int i, int j)
{
int aux = v[i];
v[i] = v[j];
v[j] = aux;
}
void quicksort(int l, int u)
{
int i, m;
if (l >= u) return;
m = l;
for (i = l + 1; i <= u; ++i)
if (v[i] < v[l])
swap(++m, i);
swap(m, l);
quicksort(l, m - 1);
quicksort(m + 1, u);
}
int main()
{
freopen("quicksort.in", "r", stdin);
freopen("quicksort.out", "w", stdout);
int i, n;
scanf("%d", &n);
for (i = 1; i <= n; ++i)
scanf("%d", &v[i]);
quicksort(1, n);
for (i = 1; i <= n; ++i)
printf("%d ", v[i]);
return 0;
}