Cod sursa(job #1218537)

Utilizator toncuvasileToncu Vasile toncuvasile Data 11 august 2014 16:57:44
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;



int partition(int *A, int st, int dr)
{
	int i=st, j=dr;
	int pivot=A[i];

	while(i<j){

		while(A[i]<pivot) i++;
		while(A[j]>pivot) j--;
		if(i<j) swap(A[i],A[j]);
	}
	return i;

}

void q_sort(int *A, int st, int dr)
{
	if(st<dr){
		int p=partition(A,st,dr);
		q_sort(A,st,p-1);
		q_sort(A,p+1,dr);
	}

}

int main()
{

    ifstream inFile("algsort.in");
	ofstream outFile("algsort.out");
	int n, A[500003];

	inFile >> n;
	for(int i=0;i<n;i++) inFile >> A[i];


	q_sort(A,0,n-1);

	for(int i=0;i<n;i++) outFile << A[i] << " ";
}