Pagini recente » Cod sursa (job #676822) | Cod sursa (job #2414992) | Cod sursa (job #2676069) | Cod sursa (job #111044) | Cod sursa (job #393949)
Cod sursa(job #393949)
#include<stdio.h>
int n,a[500100];
inline void qs(int i, int j)
{
int s=i,d=j,aux,piv=a[(i+j)>>1];
while(s<=d)
{
while(a[s]<piv)
s++;
while(a[d]>piv)
d--;
if(s<=d)
{
aux=a[s];
a[s]=a[d];
a[d]=aux;
s++;
d--;
}
}
if(s<j)
qs(s,j);
if(i<d)
qs(i,d);
}
int main()
{
int i;
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
qs(1,n);
for(i=1;i<=n;i++)
printf("%d ",a[i]);
return 0;
}