Pagini recente » Cod sursa (job #826203) | Cod sursa (job #3148024) | Cod sursa (job #3165113) | Cod sursa (job #2376622) | Cod sursa (job #304452)
Cod sursa(job #304452)
#include <stdio.h>
#define fin "algsort.in"
#define fout "algsort.out"
#define MaxN 500001
unsigned int v[500001],n;
void qsort(long l, long r)
{
long i,j,x,y;
i=l;
j=r;
x=v[(l+r)>>1];
do
{
while ((v[i]<x)&&(i<r)) ++i;
while ((x<v[j])&&(j>l)) --j;
if (i<=j)
{
y=v[i];
v[i]=v[j];
v[j]=y;
++i;
--j;
}
}
while (i<=j);
if (l<j) qsort(l,j);
if (i<r) qsort(i,r);
}
int main(){
freopen(fin,"r",stdin);
freopen(fout,"w",stdout);
scanf("%d",&n);
for (int i=1;i<=n;i++)
scanf("%ld",&v[i]);
qsort(1,n);
for (int i=1;i<=n;i++)
printf("%ld ",v[i]);
}