Pagini recente » Cod sursa (job #1470894) | Cod sursa (job #1186802) | Cod sursa (job #2894591) | Cod sursa (job #639747) | Cod sursa (job #2785668)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int n, arr[500000];
void quickSort(int a[], int left, int right)
{
int i = left;
int j = right;
int x = a[(left + right) / 2];
while (i < j)
{
while (i < right && a[i] < x)
++i;
while (j > left && a[j] > x)
--j;
if (i <= j)
{
int temp = a[i];
a[i] = a[j];
a[j] = temp;
++i;
--j;
}
}
if (left < j)
quickSort(a, left, j);
if (i < right)
quickSort(a, i, right);
}
int main()
{
fin >> n;
for (int i = 0; i < n; ++i)
{
fin >> arr[i];
}
quickSort(arr, 0, n - 1);
for (int i = 0; i < n; ++i)
{
fout << arr[i] << " ";
}
fout.flush();
return 0;
}