Cod sursa(job #1261521)

Utilizator Vladut-Vlad Panait Vladut- Data 12 noiembrie 2014 14:56:32
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int v[500005];
  void qcksrt(int left ,int right)
 {
     int i=left;
     int j=right;
     int p=v[(left+right)/2];
     while(i<=j)
     {
         while(v[i]<p)
            i++;
         while(v[j]>p)
            j--;
         if (i<=j)
         {
     v[i]=v[i]^v[j]^(v[j]=v[i]);
     i++;
     j--;}
     }
     if (left<j)
        qcksrt(left, j);
     if(i<right)
            qcksrt(i, right);



 }

 int main()
{
    int n, i;
    fin>>n;
    for(i=0;i<n;++i)
        fin>>v[i];
    qcksrt(0, n-1);
    for(i=0; i<n; ++i)
        fout<<v[i]<<' ';
fin.close();
fout.close();
    return 0;
}