Pagini recente » Cod sursa (job #1256625) | Cod sursa (job #717320) | Cod sursa (job #2712372) | Cod sursa (job #274729) | Cod sursa (job #240968)
Cod sursa(job #240968)
# include <stdio.h>
# define nmax 500001
int i,N, a[nmax];
void quick(int st, int dr)
{
int i=st,j=dr,p=a[(st+dr)/2],aux;
if (dr<=st) return;
while (i<=j){
while (a[i]<p) i++;
while (p<a[j]) j--;
if (i<=j) {
aux=a[i];a[i]=a[j]; a[j]=aux;
i++; j--;
}
}
if (st<j) quick(st,j);
if (i<dr) quick(i,dr);
}
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&N);
for (i=1;i<=N;i++)
scanf("%d ",&a[i]);
quick(1,N);
for (i=1;i<=N;i++)
printf("%d ",a[i]);
return 0;
}