Complejidad Temporal
Mejor: O(n log n)
Prom: O(n^(3/2))
Peor: O(n²)
Shell Sort es una generalización de Insertion Sort que permite el intercambio de elementos que están lejos entre sí. Usa una secuencia de brechas decrecientes para ordenar progresivamente el arreglo.
Cómo funciona:
1. Comenzar con una brecha grande (típicamente n/2)
2. Realizar un insertion sort con brecha para la brecha actual
3. Reducir la brecha (típicamente a la mitad)
4. Repetir hasta que la brecha sea 1 (la pasada final es un insertion sort estándar)
Complejidad Temporal:
Mejor: O(n log n)
Promedio: O(n^(3/2)) — depende de la secuencia de brechas
Peor: O(n²) — con secuencia de brechas n/2
Complejidad Espacial: O(1) — in-place
Propiedades:
- No es estable
- In-place
- Adaptativo
Shell Sort es más rápido que Insertion Sort para arreglos grandes porque mueve elementos más cerca de su posición final antes. El rendimiento depende mucho de la secuencia de brechas elegida.
Algoritmos relacionados
Preguntas frecuentes
- ¿Qué es Shell Sort (Ordenamiento Shell)?
- Shell Sort es una generalización de Insertion Sort que permite el intercambio de elementos que están lejos entre sí. Usa una secuencia de brechas decrecientes para ordenar progresivamente el arreglo.
- ¿Cuál es la complejidad de Shell Sort (Ordenamiento Shell)?
- Tiempo (promedio): O(n^(3/2)) — depende de la secuencia de brechas · Espacio: O(1)
- ¿Para quién es este visualizador de Shell Sort (Ordenamiento Shell)?
- La visualización de Shell Sort (Ordenamiento Shell) está pensada para nivel intermedio, dentro de la categoría Ordenamiento. Ideal para estudiantes, entrevistas técnicas y repaso práctico.
- ¿Qué algoritmos relacionados hay con Shell Sort (Ordenamiento Shell)?
- En la misma categoría (Ordenamiento) puedes explorar: Bubble Sort, Selection Sort, Insertion Sort. Todos tienen visualización interactiva.