Cod sursa(job #652225)

Utilizator deleted_d347620be487efd0DELETED deleted_d347620be487efd0 Data 23 decembrie 2011 15:30:06
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
using namespace std;

void QuickSort(int v[], int start, int end)
{
	int i = start,
		j = end,
		m = v[(start+end)>>1];

	while(i <= j)
	{
		while(v[i] < m) ++i;
		while(v[j] > m) --j;
		if(i <= j)
		{
			swap(v[i], v[j]);
			i++, j--;
		}
	}
	if(start < j) QuickSort(v, start, j);
	if(end   > i) QuickSort(v, i, end);
}

int main()
{
	int i, n, 
		v[1000+1];

	ifstream f("algsort.in");
	ofstream g("algsort.out");
	f >> n;
	for(i = 0; i < n; i++) f >> v[i];
	QuickSort(v, 0, (n-1));
	for(i = 0; i < n; i++) g << v[i] << " ";	
	return 0;
}