Pagini recente » Cod sursa (job #1870592) | Cod sursa (job #2525604) | Cod sursa (job #538113) | Cod sursa (job #2678475) | Cod sursa (job #330807)
Cod sursa(job #330807)
#include<stdio.h>
int tablou[500000];
void quickSort(int st,int dr)
{
int temp,min,max,mijl;
min = st;
max = dr;
mijl = tablou[(st + dr) / 2];
do
{
while(tablou[min] < mijl) min++;
while(tablou[max] > mijl) max--;
if(min <= max)
{
temp = tablou[min];
tablou[min++] = tablou[max];
tablou[max--] = temp;
}
}while(min <= max);
if(st < max)
quickSort(st,max);
if(min < dr)
quickSort(min,dr);
}
int main(void)
{
int n;
freopen("algsort.in","r",stdin);
freopen("algsort.out","w",stdout);
scanf("%d",&n);
for(int i = 0; i < n; i++)
scanf("%d",&tablou[i]);
quickSort(0,n-1);
for(int i = 0; i < n; i++)
printf("%d ",tablou[i]);
fclose(stdin); fclose(stdout);
return 0;
}