Pagini recente » Cod sursa (job #2357431) | Cod sursa (job #2458709) | Cod sursa (job #1523254) | Cod sursa (job #305949) | Cod sursa (job #266736)
Cod sursa(job #266736)
#include <stdio.h>
int *v,n;
inline int poz(int a,int b)
{
int t,d=0;
while(a<b)
{ if(v[a]>v[b])
{ t=v[a]; v[a]=v[b]; v[b]=t;
d=1-d;
}
a+=d; b-=1-d;
}
return a;
}
void qsort(int l,int r)
{ int k;
if(l<r)
{ k=poz(l,r);
qsort(l,k-1);
qsort(k+1,r);
}
}
int main()
{
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
v=new int[n];
for(int i=0;i<n;i++) scanf("%d",&v[i]);
qsort(0,n-1);
for(int i=0;i<n;i++) printf("%d ",v[i]);
fclose(stdin); fclose(stdout);
return 0;
}