Algoritmi Python

Bubble sort in Python

A ogni passaggio i valori maggiori avanzano verso la fine.

Che cos’è Bubble sort?

A ogni passaggio i valori maggiori avanzano verso la fine.

Ordina scambiando ripetutamente elementi adiacenti.

Quando si usa?

  • Comprendere algoritmi e strutture dati.
  • Osservare ogni passaggio e gestire i casi limite.
  • Confrontare tempo di esecuzione e memoria.

Visualizzatore di Bubble sort in Python

O(n²)

Usa Avvia o Passo per seguire ogni confronto e spostamento dei dati.

Codice di esempio

Esegui codice →
main.py
def bubble_sort(values):
    result = values.copy()
    for end in range(len(result) - 1, 0, -1):
        swapped = False
        for index in range(end):
            if result[index] > result[index + 1]:
                result[index], result[index + 1] = result[index + 1], result[index]
                swapped = True
        if not swapped:
            break
    return result

print(bubble_sort([5, 1, 4, 2, 8]))

Output previsto

[1, 2, 4, 5, 8]

Come funziona

Le coppie fuori ordine vengono scambiate. Il costo O(n²) lo rende soprattutto didattico.

Modifica i valori ed esegui il programma nel compilatore Python online CodeUtility senza installare Python.

Esercizi pratici

Modifica gli input e verifica i casi limite prima di usare dataset più grandi.

  1. Prova input vuoto, un elemento e duplicati.
  2. Stampa lo stato dopo ogni passaggio.
  3. Confronta le prestazioni con un’altra soluzione.
Esegui nell’IDE Python →