Pagini recente » Cod sursa (job #1864641) | Cod sursa (job #2677330) | Cod sursa (job #507461) | Cod sursa (job #752304) | Cod sursa (job #1181506)
#include <iostream>
#include <stdio.h>
using namespace std;
int n, a[1000];
void quicksort (int left, int right)
{
int i = left;
int j = right;
int m = (left+right)/2;
int pivot = a[m];
while (i <= j)
{
while (i < right && a[i] < pivot)
i++;
while (left < j && pivot < a[j])
j--;
if (i <= j)
{
swap (a[i], a[j]);
i++, j--;
}
}
if (i < right)
quicksort (i, right);
if (left < j)
quicksort (left, j);
}
int main()
{
freopen ("algsort.in", "r", stdin);
freopen ("algsort.out", "w", stdout);
cin >> n;
for (int i = 1; i <= n; i++)
cin >> a[i];
quicksort (1, n);
for (int i = 1; i <= n; i++)
cout << a[i] << ' ';
return 0;
}