Pagini recente » Cod sursa (job #2964478) | Cod sursa (job #1834735) | Cod sursa (job #766027) | Cod sursa (job #1725783) | Cod sursa (job #2723550)
#include <bits/stdc++.h>
using namespace std;
int partition(vector<int> &v, int low, int high) {
int pivot = v[high];
int i = low - 1;
for (int 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(vector<int> &v, int low, int high) {
if (low < high) {
int pi = partition(v, low, high);
quickSort(v, low, pi - 1);
quickSort(v, pi + 1, high);
}
}
int main() {
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int n;
fin >> n;
vector<int> v;
for (int i = 0, x; i < n; i++) {
fin >> x;
v.push_back(x);
}
quickSort(v, 0, n - 1);
for (int x : v) {
fout << x << " ";
}
return 0;
}