P2.4 · Depurar programas¶
El algoritmo de la burbuja ordena una lista comparando cada elemento con el siguiente e intercambiándolos si están desordenados. Se hace con dos bucles anidados: el padre repite n - 1 pasadas y el hijo compara pares adyacentes, recorriendo cada vez un elemento menos (el mayor ya queda al final).
Ejercicio 2.4.1¶
Implementa la burbuja para ordenar [8, 3, 1, 19, 14] y depúralo:
- Pon un punto de ruptura dentro del bucle hijo.
- Avanza paso a paso y observa cómo cambian
i,jy la lista. - Haz capturas del punto de ruptura y de las variables.
- Copia la salida final por consola.
Variante opcional: detén el bucle cuando una pasada no haga ningún intercambio (usa una variable de control).
Solución modelo (bloqueada)
🔒 La solución completa está bloqueada. Esto es solo un ejemplo de cómo empieza:
a = [8, 3, 1, 19, 14]
n = len(a)
for i in range(n - 1): # bucle padre: n - 1 pasadas
for j in range(n - 1 - i): # bucle hijo: un elemento menos cada vez
if a[j] > a[j + 1]: # ¿desordenados? (punto de ruptura aquí)
# ... (resto de la solución bloqueado)