Pagini recente » Cod sursa (job #1926355) | Cod sursa (job #623566) | Cod sursa (job #822830) | Cod sursa (job #3250091) | Cod sursa (job #2273182)
#include <fstream>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int aux, N, a[500005];
void Quicksort(int st, int dr)
{
int x = a[(st + dr)/2], i, j;
i = st;
j = dr;
while(i<=j)
{while ( (i < dr) && (a[i] < x) ) i++;
while ( (j > st) && (a[j] > x) ) j--;
if ( i <= j ) {
aux = a[i];
a[i] = a[j];
a[j] = aux;
i++;j--;
}
}
if(st < j)
Quicksort(st, j);
if(dr > i)
Quicksort(i, dr);
}
int main()
{
int i;
fin>>N;
for(i=1; i <= N; i++)
fin>>a[i];
Quicksort(1,N);
for(i=1; i <= N; i++)
fout<<a[i]<<" ";
}