Cod sursa(job #2199480)

Utilizator Anastasia11Susciuc Anastasia Anastasia11 Data 27 aprilie 2018 20:43:01
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#include <fstream>

using namespace std;

ifstream f("algsort.in");
ofstream g("algsort.out");

void quicksort(int v[], int ic, int sf)
{
    int x = v[(ic+sf)/2];
    int i = ic, j = sf;
    do
    {
        while ((i < sf) && (v[i] < x))
            i++;
        while ((j > ic) && (v[j] > x))
            j--;
        if (i <= j)
        {
            int aux = v[j];
            v[j] = v[i];
            v[i] = aux;
            i++, j--;
        }
    }while (i <= j);
    if (ic < j) quicksort(v, ic, j);
    if (i < sf) quicksort(v, i, sf);
}

int main()
{
    int n;
    f >> n;
    int a[n+1];
    for (int i = 1; i <= n; i++)
        f >> a[i];
    quicksort(a, 1, n);

    for (int i = 1; i <= n; i++)
        g << a[i] << " ";
    return 0;
}