• Domingo 22 de Diciembre de 2024, 17:02

Autor Tema:  Re: Quicksort  (Leído 989 veces)

nicokiki

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Quicksort
« en: Sábado 27 de Septiembre de 2003, 21:13 »
0
Hola a todos, soy nuevo y necesito si alguien me puede dar el quicksort para un vector de enteros o cualquier cosa. Luego yo lo traduzo a lo que necesito.
Estoy haciendo dos clases (una de UNICODE y otra de ASCII), las cuales tienen que servir en un template, y luego se almacenaran palabras en un vector de la STL (en cualquiera de los dos formatos) y las tengo que ordenar con el Quicksort.

Muchas gracias

_Viktor

  • Miembro MUY activo
  • ***
  • Mensajes: 271
    • Ver Perfil
    • http://AyudaCBuilder.foros.st
Quicksort
« Respuesta #1 en: Domingo 28 de Septiembre de 2003, 21:41 »
0
Código: Text
  1.  
  2. int particionar(int[] a, int imin, int imax) {
  3.     int ipiv= imin;
  4.     int k= imin;
  5.     int j= k+1;
  6.     while (j<=imax) {
  7.       if (a[j]<a[ipiv] ) {
  8.         k= k+1;
  9.         intercambiar(a, k, j);
  10.       }
  11.       j= j+1;
  12.     }
  13.     intercambiar(a, k, ipiv);
  14.     return k;
  15.   }
  16.  
  17. /******************************/
  18.  
  19. void quicksort(int[] a, int imin, int imax) {
  20.       if (imin>=imax)
  21.         return;
  22.       int k= particionar(a, imin, imax);
  23.       quicksort(a, imin, k-1);
  24.       quicksort(a, k+1, imax);
  25.     }
  26.  
  27.  
  28.  

Eso te servira.-
Saludos
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"

http]