Comunidad de diseño web y desarrollo en internet online

algoritmo de busqueda shell

Citar            
MensajeEscrito el 09 May 2006 05:00 pm
porfavor necesito ayuda con un asunto de busqueda shell
si pueden postear el algoritmo o algo
agradesco vuestra ayuda


-------------------------jsaomafd------------------------------

Por jsaomafd

0 de clabLevel



 

msie
Citar            
MensajeEscrito el 09 May 2006 06:09 pm
Pues en wikipedia mismo tienes una implementación para C.

http://en.wikipedia.org/wiki/Shell_sort

Deu!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

firefox
Citar            
MensajeEscrito el 10 May 2006 11:35 pm
Ahí lo tienes:

Código :

function shellsort(a,cnt){
   var g= [1,2,5,13,34,89,233,610,1597,4181,10946];
   for (var n=10;n>=0;n--){
      k=g[n];
      for (var i=k;i<cnt;i++){
         var temp=a[i];
         for (var j=(i-k);j>=0 && a[j] > temp;j-=k) a[j+k]=a[j];
         a[j+k]=temp;
      }
   }
}

a=[9,84,30,5,41,6,7,2,1,24,17,11]
shellsort(a,6);
trace (a); //5,6,9,30,41,84,7,2,1,24,17,11


Los numeros de la serie g (gaps) son el resultado de la suma de todos los anteriores mas el último. Es más eficaz que la que cita la wikipedia ( y si quieres una demostración .....) ^^

PD. Aunque me parece una vanalidad........son vestigios de los antiguos lenguajes para implementar búsquedas. AS usa con eficacia sus funciones sort y resulta evidente que es facil hacer una shell con esas funciones nativas. La velocidad de proceso es casi similar........con pequeña ventaja en arrays <2000 elementos para la sort de AS.

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.