Cod sursa(job #490566)

Utilizator andreimorosanMorosan Andrei andreimorosan Data 6 octombrie 2010 20:40:42
Problema Sortare prin comparare Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include<fstream>
using namespace std;
ifstream f("algsort.in");
ofstream g("algsort.out");
int n,vect[100],i;
void quickSort(int vect[], int stanga, int dreapta)
{  int i = stanga, j = dreapta;  
int tmp;  
int pivot = vect[(stanga + dreapta) / 2];  
while (i <= j) {   
	while (vect[i] < pivot)   
		i++;  
	while (vect[j] > pivot)  
		j--;   
	if (i <= j) {   
		tmp = vect[i];   
		vect[i] =vect[j]; 
		vect[j] = tmp;   
		i++;  
		j--;   
		}  
	};   
    if (stanga < j)   
		quickSort(vect, stanga, j);  
	if (i < dreapta)  
		quickSort(vect, i, dreapta);   
}	
int main()
{
	f>>n;
	 for(i=1;i<=n;i++)
		 f>>vect[i];
	 quickSort(vect,1,n);
	 for(i=1;i<=n;i++)
		 g<<vect[i]<<" ";
	 return 0;
}