void quicksort(double a[],int primero, int ultimo)

{   
     int i,j, central;

     double pivote;


     central = ( primero + ultimo )/2;

     pivote = a[central];

     i= primero;

     j= ultimo;

 

  do {

    while ( a[i] < pivote)i++;

    while ( a[j] > pivote ) j--;

 

    if  (i<=j)

    {

       double tmp;

       tmp= a[i];

       a[i] = a[j]; /*intercambia a[i] con a[j]*/

       a[j] = tmp;

       i++;

       j--;

    }

 } while (i <= j);

    if (primero < j)

       quicksort(a, primero, j); /* mismo proceso con sublista izqda*/

       quicksort(a, i, ultimo); /* mismo proceso con sublista drcha*/

}

 

Make a Free Website with Yola.