BubbleSort
Der Sortieralgorithmus BubbleSort sortiert eine Liste, indem er in jedem Schritt
- den gesamten unsortierten Bereich Schritt für Schritt durchgeht und
- zwei benachbarte Elemente wenn nötig vertauscht.
- Dadurch ist automatisch das größte Element ans Ende der Liste "hochgeblubbert" (deswegen auch BubbleSort) und
- der unsortierte Bereich kann um ein Element verkleinert werden.
In den beiden Videos unten sieht man mehrere Marker (blaue Kreise unter den Balken).
- Der blaue Marker markiert, ab welchem Element die Liste bereits sortiert ist.
- Die beiden grünen Marker markieren, welche Elemente gerade miteinander verglichen werden.
- Die beiden roten Marker markieren, welche Elemente gerade miteinander vertauscht werden.
BubbleSort mit 25 Elementen
BubbleSort mit 100 Elementen
Struktogramm BubbleSort
![](https://wiki-mathe-info.de/_media/info/sek-ii/q1/algorithmen-rekursion/fk-bubblesort-christian.weber-2023-10-08-19-48-28.png)
Java-Code BubbleSort
- Sort_BubbleSort.pde
int[] daten = new int[] { 8, 52, 33, 30, 69, 84, 72, 99, 78, 86, 18, 17, 89, 83, 65, 95, 14, 6, 9, 38, 5, 98, 9, 39, 82 }; int sortiertAbIndex = daten.length; while (sortiertAbIndex > 0) { for (int index = 1; index < sortiertAbIndex; index++) { if (daten[index - 1] > daten[index]) { int temp = daten[index]; daten[index] = daten[index - 1]; daten[index - 1] = temp; } } sortiertAbIndex--; } printArray(daten);