Implementieren Sie den Bubble-Sort-Algorithmus, um eine gegebene Liste von Ganzzahlen zu sortieren.
Bubble Sort ist ein Vergleichssortieralgorithmus, der durch wiederholtes Vertauschen benachbarter Elemente, die in der falschen Reihenfolge sind, funktioniert. Die Liste wird mehrmals durchlaufen, wobei jedes benachbarte Paar verglichen und bei Bedarf vertauscht wird, bis keine Vertauschungen mehr erforderlich sind.
Schreiben Sie eine Funktion namens bubble_sort
, die eine Liste von Ganzzahlen als Parameter annimmt.
Implementieren Sie den Bubble-Sort-Algorithmus, um die Liste in aufsteigender Reihenfolge zu sortieren.
Geben Sie die sortierte Liste aus.
zahlen = [64, 34, 25, 12, 22, 11, 90]
Sortierte Liste: [11, 12, 22, 25, 34, 64, 90]
Der Bubble-Sort-Algorithmus ist ein einfacher Sortieralgorithmus, der mehrmals über die Liste läuft, benachbarte Elemente vergleicht und sie vertauscht, wenn sie in der falschen Reihenfolge sind. Die Erklärung ist wie folgt:
i
und Element i+1
).i
größer ist als das Element i+1
, werden die Elemente vertauscht, sodass das größere Element an einer höheren Position in der Liste steht.
Angenommen, wir haben die Liste [5, 2, 9, 1, 5, 6]
.
Erster Durchlauf: Vergleiche und vertausche die benachbarten Elemente:
(5, 2)
: Vertauscht zu '(2, 5)
(5, 9)
: Kein Tausch(9, 1)
: Vertauscht zu (1, 9)
(9, 5)
: Vertauscht zu (5, 9)
(9, 6)
: Vertauscht zu (6, 9)
Ergebnis nach dem ersten Durchlauf: [2, 5, 1, 5, 6, 9]
Zweiter Durchlauf: Wiederhole den Vorgang:
(2, 5)
: Kein Tausch(5, 1)
: Vertauscht zu (1, 5)
(5, 5)
: Kein Tausch(5, 6)
: Kein Tausch
Ergebnis nach dem zweiten Durchlauf: [2, 1, 5, 5, 6, 9]
Weitere Durchläufe: Fortsetzen, bis die Liste sortiert ist:
Ergebnis: [1, 2, 5, 5, 6, 9]
Eigenschaften:
Trotz seiner Einfachheit ist Bubble Sort in der Praxis oft ineffizient im Vergleich zu anderen Sortieralgorithmen wie Quick Sort oder Merge Sort, besonders wenn es um große Datenmengen geht.