SlideShare una empresa de Scribd logo
El método de Shell es una versión mejorada del
método de inserción.
El nombre de Método Shell lo recibe en honor a su
creador, Donald L. Shell.

Shell lo propuso por primera vez en 1959 en una
publicación en la revista Comunications of the ACM.

.
Es un algoritmo de ordenación interna, se basa en
comparaciones e intercambios aunque también puede
realizar ordenación externa.

Consiste en la disminución de saltos al ir comparando
los   elementos    e    intercambiar     los   mismos
continuamente hasta llegar al arreglo solicitado.

Es considerado uno de los métodos mas eficientes
aunque menos ocupado que otros.
Paso 1:    9   8   7   6   5   4   3   2   1   0   id=id+1/2=5


Paso 2 :   4   3   2   1   0   9   8   7   6   5   id=id+1/2=3


Paso 2 :   4   3   2   1   0   6   5   7   9   8   id=id+1/2=3


Paso 2 :   4   0   2   1   3   6   5   7   9   8   id=id+1/2=3


Paso 3 :   1   0   2   4   3   6   5   7   9   8   id=id+1/2=2
Paso 4 :   1   0   2   4   3   6   5   7   9   8   id=id+1/2=1


Paso 4 :   1   0   2   4   3   6   5   7   8   9   id=id+1/2=1


Paso 4 :   1   0   2   4   3   5   6   7   8   9   id=id+1/2=1


Paso 4 :   1   0   2   3   4   5   6   7   8   9   id=id+1/2=1


Paso 5 :   0   1   2   3   4   5   6   7   8   9
Shell (n,x)



      Id = n



idn =(int) (id +1) /2



      b=i=0
j = n – i -1
 k = j - idn


               si   tmp = x (k)
 x(k)>               x (k) = x(j)
  x(j)               x(j) = tmp


    i=i+1                 b=b+1




   k>0
id=idn



 b=0




idn = 1



  FIN
#include "librerias.h"

void sort_shell(double *m,int n)
{
           int incr=n/2,p,j;
           double tmp;
           do{
                       for(p=incr+1;p<n;p++)
           {
                       tmp=m[p];
                       j=p.incr;
                       While((j>=0) && (tmp<m[j];
                       {
                                  m(j+incr)=[j];
                                  j.=incr;
                       }
                       m[j+incr]=tmp;
           }
           incr/=2;
           }
           while(incr>0);
}
YURY KARINA GUERRERO

Más contenido relacionado

Similar a Expo metodo de ordenamiento shell

Jorge informe tecnico
Jorge informe tecnicoJorge informe tecnico
Jorge informe tecnico
Jorge Ake Pech
 
Informe tecnico
Informe tecnicoInforme tecnico
Funciones
FuncionesFunciones
Funciones
Diego Cislema
 
Metodos de Ordenamiento Parte 1
Metodos de Ordenamiento Parte 1Metodos de Ordenamiento Parte 1
Metodos de Ordenamiento Parte 1
Luis Fernando Aguas Bucheli
 
informe unidad 5 -Metodos de ordenamiento-
informe unidad 5 -Metodos de ordenamiento- informe unidad 5 -Metodos de ordenamiento-
informe unidad 5 -Metodos de ordenamiento-
Eliu Osseas Puc Puc
 
Equipo7 Arduino
Equipo7 ArduinoEquipo7 Arduino
Equipo7 Arduino
Joel Rebollo
 
Informe metodos de ordenamiento
Informe metodos de ordenamientoInforme metodos de ordenamiento
Informe metodos de ordenamiento
eliezerbs
 
Informe metodos de ordenamiento
Informe metodos de ordenamientoInforme metodos de ordenamiento
Informe metodos de ordenamiento
eliezerbs
 
Presentación1
Presentación1Presentación1
Presentación1
Jonathan BarCe
 
Informe tecnico u 5-victor uex
Informe tecnico u 5-victor uexInforme tecnico u 5-victor uex
Informe tecnico u 5-victor uex
victoruex
 
Programacion ii
Programacion iiProgramacion ii
Programacion ii
Pipe Triana
 
ORM Doctrine
ORM DoctrineORM Doctrine
ORM Doctrine
Decharlas
 
Arduino uno 2 estudiantes
Arduino uno 2 estudiantesArduino uno 2 estudiantes
Arduino uno 2 estudiantes
CiraBringas2
 
Semana 6 Módulos en Python Entrega 1
Semana 6   Módulos en Python Entrega 1Semana 6   Módulos en Python Entrega 1
Semana 6 Módulos en Python Entrega 1
Richard Eliseo Mendoza Gafaro
 
Informe minishell
Informe minishellInforme minishell
Informe minishell
Alex Pin
 
Informe 2 da unidad lp
Informe 2 da unidad lpInforme 2 da unidad lp
Informe 2 da unidad lp
Admer Barrios Urbina
 
Ejercicios punteros 1a11, lenguaje C
Ejercicios punteros 1a11, lenguaje CEjercicios punteros 1a11, lenguaje C
Ejercicios punteros 1a11, lenguaje C
rasave
 
Eliminacion Gaussiana en C
Eliminacion Gaussiana en CEliminacion Gaussiana en C
Eliminacion Gaussiana en C
RaInti78
 
Ejercicio 1
Ejercicio 1Ejercicio 1
Ejercicio 1
angecondulsura
 
Ej1 t2 l3-1
Ej1 t2 l3-1Ej1 t2 l3-1
Ej1 t2 l3-1
jvidalcc
 

Similar a Expo metodo de ordenamiento shell (20)

Jorge informe tecnico
Jorge informe tecnicoJorge informe tecnico
Jorge informe tecnico
 
Informe tecnico
Informe tecnicoInforme tecnico
Informe tecnico
 
Funciones
FuncionesFunciones
Funciones
 
Metodos de Ordenamiento Parte 1
Metodos de Ordenamiento Parte 1Metodos de Ordenamiento Parte 1
Metodos de Ordenamiento Parte 1
 
informe unidad 5 -Metodos de ordenamiento-
informe unidad 5 -Metodos de ordenamiento- informe unidad 5 -Metodos de ordenamiento-
informe unidad 5 -Metodos de ordenamiento-
 
Equipo7 Arduino
Equipo7 ArduinoEquipo7 Arduino
Equipo7 Arduino
 
Informe metodos de ordenamiento
Informe metodos de ordenamientoInforme metodos de ordenamiento
Informe metodos de ordenamiento
 
Informe metodos de ordenamiento
Informe metodos de ordenamientoInforme metodos de ordenamiento
Informe metodos de ordenamiento
 
Presentación1
Presentación1Presentación1
Presentación1
 
Informe tecnico u 5-victor uex
Informe tecnico u 5-victor uexInforme tecnico u 5-victor uex
Informe tecnico u 5-victor uex
 
Programacion ii
Programacion iiProgramacion ii
Programacion ii
 
ORM Doctrine
ORM DoctrineORM Doctrine
ORM Doctrine
 
Arduino uno 2 estudiantes
Arduino uno 2 estudiantesArduino uno 2 estudiantes
Arduino uno 2 estudiantes
 
Semana 6 Módulos en Python Entrega 1
Semana 6   Módulos en Python Entrega 1Semana 6   Módulos en Python Entrega 1
Semana 6 Módulos en Python Entrega 1
 
Informe minishell
Informe minishellInforme minishell
Informe minishell
 
Informe 2 da unidad lp
Informe 2 da unidad lpInforme 2 da unidad lp
Informe 2 da unidad lp
 
Ejercicios punteros 1a11, lenguaje C
Ejercicios punteros 1a11, lenguaje CEjercicios punteros 1a11, lenguaje C
Ejercicios punteros 1a11, lenguaje C
 
Eliminacion Gaussiana en C
Eliminacion Gaussiana en CEliminacion Gaussiana en C
Eliminacion Gaussiana en C
 
Ejercicio 1
Ejercicio 1Ejercicio 1
Ejercicio 1
 
Ej1 t2 l3-1
Ej1 t2 l3-1Ej1 t2 l3-1
Ej1 t2 l3-1
 

Expo metodo de ordenamiento shell

  • 1. El método de Shell es una versión mejorada del método de inserción. El nombre de Método Shell lo recibe en honor a su creador, Donald L. Shell. Shell lo propuso por primera vez en 1959 en una publicación en la revista Comunications of the ACM. .
  • 2. Es un algoritmo de ordenación interna, se basa en comparaciones e intercambios aunque también puede realizar ordenación externa. Consiste en la disminución de saltos al ir comparando los elementos e intercambiar los mismos continuamente hasta llegar al arreglo solicitado. Es considerado uno de los métodos mas eficientes aunque menos ocupado que otros.
  • 3. Paso 1: 9 8 7 6 5 4 3 2 1 0 id=id+1/2=5 Paso 2 : 4 3 2 1 0 9 8 7 6 5 id=id+1/2=3 Paso 2 : 4 3 2 1 0 6 5 7 9 8 id=id+1/2=3 Paso 2 : 4 0 2 1 3 6 5 7 9 8 id=id+1/2=3 Paso 3 : 1 0 2 4 3 6 5 7 9 8 id=id+1/2=2
  • 4. Paso 4 : 1 0 2 4 3 6 5 7 9 8 id=id+1/2=1 Paso 4 : 1 0 2 4 3 6 5 7 8 9 id=id+1/2=1 Paso 4 : 1 0 2 4 3 5 6 7 8 9 id=id+1/2=1 Paso 4 : 1 0 2 3 4 5 6 7 8 9 id=id+1/2=1 Paso 5 : 0 1 2 3 4 5 6 7 8 9
  • 5. Shell (n,x) Id = n idn =(int) (id +1) /2 b=i=0
  • 6. j = n – i -1 k = j - idn si tmp = x (k) x(k)> x (k) = x(j) x(j) x(j) = tmp i=i+1 b=b+1 k>0
  • 8. #include "librerias.h" void sort_shell(double *m,int n) { int incr=n/2,p,j; double tmp; do{ for(p=incr+1;p<n;p++) { tmp=m[p]; j=p.incr; While((j>=0) && (tmp<m[j]; { m(j+incr)=[j]; j.=incr; } m[j+incr]=tmp; } incr/=2; } while(incr>0); }