Pagini recente » Cod sursa (job #2275418) | Cod sursa (job #1624741) | Cod sursa (job #1491269) | Cod sursa (job #1650255) | Cod sursa (job #2901357)
#include <bits/stdc++.h>
using namespace std;
ifstream in("algsort.in");
ofstream out("algsort.out");
int partition (int v[], int st, int dr){
int pivot = v[dr];
int i = (st - 1);
for (int j = st; j < dr; j++){
if (v[j] < pivot){
i++;
swap(v[i], v[j]);
}
}
swap(v[i + 1], v[dr]);
return (i + 1);
}
void qSort(int v[], int s, int d){
if(s < d){
int p = partition(v, s, d);
qSort(v, s, p-1);
qSort(v, p+1, d);
}
}
int main(){
int n, v[500001];
in >> n;
for(int i = 0; i < n; ++i)
in >> v[i];
qSort(v, 0, n - 1);
for(int i = 0; i < n; ++i)
out << v[i] << ' ';
in.close();
out.close();
return 0;
}