Cod sursa(job #2624086)

Utilizator StrategicFailCalugaru Robert StrategicFail Data 4 iunie 2020 14:47:49
Problema Sortare prin comparare Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <iostream>
#include <fstream>
using namespace std;
int a[500001], n, aux;

void quick_sort(int v[], int s, int d) {
  int pivot, i, j, aux;
  i = s;
  j = d;
  pivot = v[(i + j) / 2];
  do {
    while ( (i < d) && (v[i] < pivot) ) i++;
    while ( (j > s) && (v[j] > pivot) ) j--;
    if ( i <= j ) {
      aux = v[i];
      v[i] = v[j];
      v[j] = aux;
      i++;
      j--;
    }
  } while ( i <= j );
  if ( s < j ) quick_sort(v, s, j);
  if ( i < d ) quick_sort(v, i, d);
}
int main()
{ifstream in ("algsort.in");
ofstream out("algsort.out");
in >> n;
for (int i = 0 ; i < n; ++i)
    in >>a[i];
quick_sort(a,0,n-1);
for (int i = 0; i < n ; ++i)
    out << a[i] << ' ';
}