Cod sursa(job #2195906)

Utilizator pasoi_stefanPasoi Stefan pasoi_stefan Data 17 aprilie 2018 17:40:30
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<fstream>
using namespace std;
ifstream cin("algsort.in");
ofstream cout("algsort.out");
int v[500005],n;
void QuickSort(int st,int dr)
{
    if(st<dr)
    {
        int part,zid=st-1,aux;
        for(int i=st;i<=dr-1;i++)
            if(v[i]<=v[dr])
            {
                ++zid;
                aux=v[zid]; v[zid]=v[i]; v[i]=aux;
            }
        part=zid+1;
        aux=v[part]; v[part]=v[dr]; v[dr]=aux;
        QuickSort(st,part-1);
        QuickSort(part+1,dr);
    }
}
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>v[i];
    QuickSort(1,n);
	for(int i=1;i<=n;i++)
        cout<<v[i]<<' ';
}