Pagini recente » Cod sursa (job #2400847) | Cod sursa (job #2976303) | Cod sursa (job #2272502) | Cod sursa (job #967394) | Cod sursa (job #2926683)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int j , i , n , v[500005];
int partitie (int low , int high)
{
int i = low - 1;
int pivot = v[high];
for(j=low; j<high; j++)
{
if(v[j] <= pivot)
{
i++;
swap(v[i] , v[j]);
}
}
swap(v[i+1] , v[high]);
return i+1;
}
void quicksort (int low , int high)
{
if(low < high)
{
int pi = partitie(low , high);
quicksort (low , pi-1);
quicksort (pi+1 , high);
}
}
int main()
{
f >> n;
for(i=1; i<=n; i++)
f >> v[i];
quicksort (1 , n);
for(i=1; i<=n; i++)
g << v[i] << " ";
return 0;
}