BubbleSort

Bubble Sort – Einfach erklärt

BubbleSort

Bubble Sort ist einer der bekanntesten und einfachsten Sortieralgorithmen. Der Name kommt daher, dass beim Sortieren größere Elemente sozusagen „nach oben steigen“ wie Luftblasen im Wasser.


Was macht Bubble Sort?

Bubble Sort sortiert eine Liste von Zahlen (oder anderen vergleichbaren Werten), indem immer wieder benachbarte Elemente verglichen und bei Bedarf vertauscht werden. Am Ende ist die Liste von klein nach groß (oder umgekehrt) sortiert.


So funktioniert Bubble Sort – Schritt für Schritt

  1. Starte ganz links in der Liste.
  2. Vergleiche das erste Element mit dem zweiten.
    • Ist das erste größer als das zweite? Tauschen!
    • Sonst nichts tun.
  3. Gehe ein Feld weiter nach rechts und wiederhole den Vergleich und ggf. das Tauschen.
  4. Am Ende eines Durchgangs steht das größte Element ganz rechts.
  5. Starte wieder von vorn, aber ignoriere das bereits sortierte letzte Element.
  6. Das wiederholst du so lange, bis keine Vertauschung mehr nötig ist.

Beispiel

Unsortierte Liste:
[5, 2, 8, 1, 4]

Erster Durchgang:

  • Vergleiche 5 und 2 → Tauschen: [2, 5, 8, 1, 4]
  • Vergleiche 5 und 8 → OK
  • Vergleiche 8 und 1 → Tauschen: [2, 5, 1, 8, 4]
  • Vergleiche 8 und 4 → Tauschen: [2, 5, 1, 4, 8]

Zweiter Durchgang:

  • Vergleiche 2 und 5 → OK
  • Vergleiche 5 und 1 → Tauschen: [2, 1, 5, 4, 8]
  • Vergleiche 5 und 4 → Tauschen: [2, 1, 4, 5, 8]
  • Das größte Element (8) bleibt ganz rechts.

Und so weiter, bis alles sortiert ist:
[1, 2, 4, 5, 8]

Bubble Sort im Code (JavaScript)

function bubbleSort(arr) {
  let n = arr.length;
  let vertauscht;
  do {
    vertauscht = false;
    for (let i = 0; i < n - 1; i++) {
      if (arr[i] > arr[i + 1]) {
        // Elemente tauschen
        let temp = arr[i];
        arr[i] = arr[i + 1];
        arr[i + 1] = temp;
        vertauscht = true;
      }
    }
    n--;
  } while (vertauscht);
  return arr;
}

// Beispiel-Aufruf:
console.log(bubbleSort([5, 2, 8, 1, 4])); // [1, 2, 4, 5, 8]

Vorteile & Nachteile

Vorteile:

  • Einfach zu verstehen
  • Schnell zu programmieren
  • Gut für kleine Listen

Nachteile:

  • Sehr langsam für große Datenmengen
  • Nicht effizient für große, unsortierte Listen

Merksatz

Bubble Sort ist leicht zu verstehen, aber nichts für große Listen.
Trotzdem super, um die Grundlagen von Sortieralgorithmen zu lernen!


Noch Fragen oder willst du andere Sortieralgorithmen erklärt haben? Schreib’s in die Kommentare!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Top News