Cod sursa(job #1019634)

Utilizator cristy202020Totolin Cristian cristy202020 Data 31 octombrie 2013 18:00:54
Problema Sortare prin comparare Scor 20
Compilator c Status done
Runda Arhiva educationala Marime 0.76 kb
#include<stdio.h>

int n,k;
int v[100];
int p;
int PARTITION( int left, int right, int p)
{
int aux, x;
int i = left;
int j = right;
x = v[left];
while (i<j)
 {
    if(v[i]>v[j])
	{ aux=v[i];
	  v[i]=v[j];
	  v[j]=aux;
	 }
     if (v[i]==x)
	j=j-1;
    else
       i=i+1;
  }
  return i;
}
void QUICKSORT(int left,int right)
{ int pivot=0;
if (left < right)
   { pivot=PARTITION( left, right,pivot);
      QUICKSORT( left, pivot-1);
      QUICKSORT( pivot+1, right);
}
}


int main()
{
    int i,k;
	FILE *f=fopen("algsort.in","r");
	FILE *g=fopen("algsort.out","w");
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
       fscanf(f,"%d",&v[i]);
       
	   QUICKSORT(1,n);

	for(k=1;k<=n;k++)
     fprintf(g,"%d ",v[k]);
	return 0;

}