Pagini recente » Cod sursa (job #2297003) | Rating Ciobotaru Cosmin-Andrei (cosminnnn) | Cod sursa (job #2302720) | Cod sursa (job #261914) | Cod sursa (job #1427367)
#include <cstdio>
using namespace std;
void quicksort(long a[500005], int dr, int stg)
{
int min, max, aux, sp;
min = dr;
max = stg;
sp = a[(dr+stg)/2];
do
{
while(a[min] < sp)
min++;
while(a[max] > sp)
max--;
if(min <= max)
{
aux = a[min];
a[min++] = a[max];
a[max--] = aux;
}
}
while(min <= max);
if(dr < max)
quicksort(a, dr, max);
if(min < stg)
quicksort(a, stg, min);
}
int main()
{
long b[500005], N, i;
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
scanf("%ld", &N);
for(i=0; i<N; i++)
scanf("%ld", &b[i]);
quicksort(b, 0, N-1);
for(i=0; i<N; i++)
printf("%ld ", b[i]);
return 0;
}