Cod sursa(job #1022755)

Utilizator Simona13Simona Mihalca Simona13 Data 5 noiembrie 2013 22:01:55
Problema Sortare prin comparare Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.87 kb
#include<iostream>
#include<fstream>
using namespace std;

void quickSort(long arr[], int left, int right) 
{
      int i = left, j = right;
      int tmp;
      int pivot = arr[(left + right) / 2];
       /* partition */
      while (i <= j) 
	  	{ while (arr[i] < pivot)
                  i++;
          while (arr[j] > pivot)
                  j--;
          if (i <= j) 
	 		{
	          tmp = arr[i];
	          arr[i] = arr[j];
	          arr[j] = tmp;
	          i++;
	          j--;
            }
      	}
 /* recursion */
      if (left < j)
            quickSort(arr, left, j);
      if (i < right)
            quickSort(arr, i, right);
}

int main()
{long v[500001],n;
int i;
ifstream f("algsort.in");
f>>n;
for(i=1;i<=n;i++)
    f>>v[i];
f.close();
quickSort(v,1,n);
ofstream g("algsort.out");
for(i=1;i<=n;i++)
  g<<v[i]<<' ';
return 0;}