Hecho para comparar, construido para medir

Shellsort

Laboratorio de ordenamiento, un método a la vez

Shell sort hace que el paso más simple hacia el orden se sienta considerado.

Ver animación

No es solo un método

Shell Sort, también conocido como método de Shell, es una generalización del ordenamiento por inserción donde elementos gap la distancia que los separa se comparan en lugar de elementos adyacentes. El método comienza ordenando pares de elementos lejos separadas unas de otras, reduciendo progresivamente la brecha entre elementos a comparar. Comenzando con elementos muy separados, puede moverse algunos elementos fuera de lugar en posición más rápido que un simple más cercano intercambio de vecinos. El tiempo de ejecución de Shellsort depende en gran medida de la secuencia de huecos que utiliza. Para muchas variantes prácticas, determinar su la complejidad del tiempo sigue siendo un problema abierto. Es una clasificación en el lugar algoritmo que no es estable.

Coste computacional
Promedio

O(n3/2)

Mejor caso

O(n log n)

Peor caso

O(n2)

Curiosidades

Notas de archivo sobre el método de Shell — la voz conversacional del laboratorio.

  1. 01

    Existen varias formas de calcular el intervalo, lo cual puede mejorar la efectividad del algoritmo.

  2. 02

    El algoritmo Shell sort mejora el ordenamiento por inserción comparando elementos separados por un espacio de varias posiciones. Esto permite que un elemento haga "pasos más grandes" hacia su posición esperada.

  3. 03

    Debe su nombre al ingeniero y matemático estadounidense Donald Shell que lo publicó en la revista Communications Of the ACM en 1959.

  4. 04

    Se basa en comparaciones e intercambios.

  5. 05

    Se necesita que el tiempo de acceso a cualquier dato sea constante.