Pagini recente » Cod sursa (job #1995736) | Cod sursa (job #2466669) | Cod sursa (job #472550) | Cod sursa (job #589546) | Cod sursa (job #354540)
Cod sursa(job #354540)
#include <stdio.h>
int a[500001];
void sort(int l,int r)
{
int i=l,j=r,x=a[(l+r)/2],y;
do
{
while (a[i]<x) {++i;};
while (x<a[j]) {--j;};
if (i<=j)
{
y=a[i];a[i]=a[j];a[j]=y;
++i;--j;
}
}
while (i<=j);
if (l<j) sort(l,j);
if (i<r) sort(i,r);
}
int main()
{
int i,n;
freopen("quicksort.in","r",stdin);
freopen("quicksort.out","w",stdout);
scanf("%d",&n);
for (i=1;i<n+1;i++) scanf("%d",&a[i]);
sort(1,n);
for (i=1;i<n+1;i++) printf("%d%c",a[i],' ');
}