Pagini recente » Cod sursa (job #223585) | Cod sursa (job #890780) | Cod sursa (job #2731243) | Cod sursa (job #1687324) | Cod sursa (job #1877524)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
void quick_sort(int L, int R, long *x)
{
if(L==R)
return;
int pivot=x[L+(R-L)/2];
int ST=L, DR=R;
do
{
while(x[ST]<pivot) ST++;
while(x[DR]>pivot) DR--;
if(ST<=DR)
{
swap(x[ST],x[DR]);
ST++;
DR--;
}
}while(ST<=DR);
if(L<DR) quick_sort(L,DR,x);
if(ST<R) quick_sort(ST,R,x);
}
int main()
{
long v[500005],N;
f>>N;
for(long i=0; i<N; i++)
f>>v[i];
quick_sort(0,N-1,v);
for(long i=0; i<N; i++)
g<<v[i]<<" ";
f.close();
g.close();
return 0;
}