Pagini recente » Cod sursa (job #1187065) | Cod sursa (job #2830090) | Cod sursa (job #1599279) | Cod sursa (job #1403615) | Cod sursa (job #625721)
Cod sursa(job #625721)
#include <stdio.h>
using namespace std;
int n,a[502000],i,min,j,k;
void qsort(int left, int right)
{
int j=right;
int i=left;
int middle=a[(left+right)/2];
int aux;
do
{
while((a[i]<middle) && (i<N)) ++i;
while((a[j]>middle) && (j>1)) --j;
if (i<=j){
aux=a[i];
a[i]=a[j];
a[j]=aux;
++i;
--j;
}
}
while(i<=j);
if (left<j)
qsort(left,j);
if (i<right)
qsort(i,right);
}
int main(){
FILE *f=fopen("algsort.in","rt");
FILE *g=fopen("algsort.out","wt");
fscanf(f,"%d", &n);
for (i=1;i<=n;++i)
fscanf(f,"%d", &a[i]);
qsort(1,n);
for (i=1;i<=n;++i)
fprintf(g,"%d ", a[i]);
return 0;
}