Cod sursa(job #608148)

Utilizator cosminx2003Cosmin Clapon cosminx2003 Data 15 august 2011 12:15:26
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream.h>
#include <iostream.h>
#define MAX 500001

ifstream f("algsort.in");
ofstream g("algsort.out");
int v[MAX];
void quick(int i,int j);

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

	quick(1,n);
	
	for(i=1;i<=n;i++)
		g<<v[i]<<" ";
	
	f.close();
	g.close();
	return 0;
}

void quick(int i,int j)
{
	if(i==j)
		return;
	
	int p,aux,start,stop;
	start=i;
	stop=j;
	
	p=v[(i+j)/2];
	while(i<j)
	{
		while(v[i]<p)
			i++;
		while(v[j]>p)
			j--;
		if(i<j)
			aux=v[i], v[i]=v[j], v[j]=aux;
	}
	quick(start,i);
	quick(i+1,stop);
}