Pagini recente » Cod sursa (job #2612647) | Cod sursa (job #1617326) | Cod sursa (job #634787) | Cod sursa (job #2093701) | Cod sursa (job #3031021)
#include <bits/stdc++.h>
#include <algorithm>
using namespace std;
void quicksort(int *v, int left, int right)
{
if (left >= right)
return;
int mid = left + (right - left) / 2;
int pivot = v[mid], j = left;
swap(v[mid], v[right]);
for (int i = left; i < right; i++)
if (v[i] < pivot) {
swap(v[j], v[i]);
j++;
}
swap(v[j], v[right]);
quicksort(v, left, j - 1);
quicksort(v, j + 1, right);
}
int main()
{
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int n;
fin >> n;
int *v = (int*) malloc (n * sizeof(int));
if (!v) return -1;
for (int i = 0; i < n; i++)
fin >> v[i];
quicksort(v, 0, n - 1);
for (int i = 0; i < n; i++)
fout << v[i] << ' ';
return 0;
}