Algoritmos en Python

Ordenamiento por selección en Python

La lista se divide en una zona ordenada y otra sin ordenar.

¿Qué es Ordenamiento por selección en Python?

La lista se divide en una zona ordenada y otra sin ordenar.

Coloca sucesivamente el menor elemento restante.

¿Cuándo se utiliza?

  • Comprender algoritmos y estructuras de datos.
  • Observar cada paso y tratar casos límite.
  • Comparar tiempo de ejecución y memoria.

Visualizador de Ordenamiento por selección en Python

O(n²)

Usa Reproducir o Paso para seguir cada comparación y movimiento de datos.

Código de ejemplo

Ejecutar código →
main.py
def selection_sort(values):
    result = values.copy()
    for start in range(len(result)):
        minimum = start
        for index in range(start + 1, len(result)):
            if result[index] < result[minimum]:
                minimum = index
        result[start], result[minimum] = result[minimum], result[start]
    return result

print(selection_sort([64, 25, 12, 22, 11]))

Resultado esperado

[11, 12, 22, 25, 64]

Cómo funciona

Cada pasada busca el mínimo: tiempo O(n²) y memoria adicional O(1).

Cambia los valores y ejecuta el programa en el compilador Python online de CodeUtility sin instalar Python.

Ejercicios prácticos

Modifica las entradas y prueba casos límite antes de usar conjuntos de datos mayores.

  1. Prueba una entrada vacía, un elemento y duplicados.
  2. Muestra el estado después de cada paso.
  3. Compara el rendimiento con otra solución.
Ejecutar en el IDE de Python →