Pagini recente » Cod sursa (job #3281183) | Cod sursa (job #3175128) | Cod sursa (job #2060093) | Cod sursa (job #2778700) | Cod sursa (job #2761492)
#include <iostream>
#include <fstream>
#include <iomanip>
#include <cmath>
#include <algorithm>
#include <cstring>
using namespace std;
string NumeFisier = "algsort";
ifstream fin(NumeFisier + ".in");
ofstream fout(NumeFisier + ".out");
typedef unsigned long long int ull;
void QuickSort(int v[], int left, int right)
{
if (left < right)
{
int mid = (left + right) / 2;
swap(v[left], v[mid]);
int i = left, j = right, d = 0;
while (i < j)
{
if (v[i] > v[j])
swap(v[i], v[j]);
i += d;
j -= 1 - d;
}
QuickSort(v, left, i - 1);
QuickSort(v, i + 1, right);
}
}
int main()
{
int v[500001];
int n;
fin >> n;
for (int i = 1; i <= n; i++)
fin >> v[i];
QuickSort(v, 1, n);
for (int i = 1; i <= n; i++)
fout << v[i] << ' ';
}