Saltar al contenido

Ordenamiento por selección

Python · Unidad 23: Buscar y ordenar

Ordenar por selección es lo que haces con las cartas en la mano: buscas la más chica de las que quedan y la pones al frente.

El primer paso es encontrar dónde está la más chica. Se guarda la posición, no el valor, porque después hay que moverla.

ns = [5, 2, 9, 1]
m = 0
for i in range(1, len(ns)):
    if ns[i] < ns[m]:
        m = i
print("el menor está en", m)

Imprime

el menor está en 3

El resto de la explicación está en la lección, que es del plan completo.

Ejercicios de esta lección

Se hacen en la app, que los corrige al momento y explica por qué.

  1. 1. Predice la salida

    ¿Qué imprime este código?

  2. 2. Predice la salida

    ¿Qué imprime este código?

  3. 3. Completa el código

    ¿Desde dónde busca el menor el ciclo de adentro?

  4. 4. Encuentra el bug

    Esta versión intercambia con una variable extra. Debería imprimir [1, 3, 4], pero el 4 desaparece y el 1 sale dos veces. ¿Qué línea tiene el error?

  5. 5. Predice la salida

    El contador sube en cada comparación. ¿Qué imprime?

  6. 6. Opción múltiple

    Con 4 números la selección hizo 6 comparaciones. Si la lista tuviera 8, ¿qué pasaría?

  7. 7. Ordena las líneas

    Arma el ordenamiento por selección.

  8. 8. Predice la salida

    ¿Qué imprime este código?

Hacer esta lección

Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.

Ver todas las lecciones →