← StartseiteProgrammierung (Програмування)

Was ist Bubble Sort (Erklärung des Algorithmus)?

Bubble Sort - ein einfacher Sortieralgorithmus, der benachbarte Elemente eines Arrays vergleicht und sie vertauscht, bis alle Zahlen in der Reihenfolge sind. Er lässt sich leicht in Ruby umsetzen, eignet sich für das ...

Dieser Inhalt wurde automatisch aus dem Ukrainischen übersetzt.
Bubble Sort - ist einer der einfachsten Sortieralgorithmen. Sein Wesen besteht darin, benachbarte Elemente eines Arrays zu vergleichen und sie zu vertauschen, wenn sie in der falschen Reihenfolge stehen. So "steigt" das "schwierigste" Element allmählich ans Ende des Arrays, wie eine Blase im Wasser, daher der Name des Algorithmus.
Wie es einfach funktioniert:
  • Wir nehmen ein Array von Zahlen
  • Wir vergleichen die erste Zahl mit der zweiten
  • Wenn die erste größer ist als die zweite - tauschen wir sie
  • Wir gehen zum nächsten Paar über und wiederholen
  • Wir wiederholen den gesamten Prozess mehrere Male, bis das Array sortiert ist
Beispiel einer Implementierung in Ruby:
def bubble_sort(array)
  n = array.length
  loop do
    swapped = false
    (n-1).times do |i|
      if array[i] > array[i+1]
        array[i], array[i+1] = array[i+1], array[i]
        swapped = true
      end
    end
    break unless swapped
  end
  array
end

numbers = [5, 2, 9, 1, 5, 6]
sorted_numbers = bubble_sort(numbers)
So etwas werdet ihr im Terminal sehen:
Screenshot 2025-09-16 at 18.40.33.png
Erklärung des Codes: 
  • swapped verfolgt, ob es Änderungen im aktuellen Durchgang gab
  • Wenn es in einem Durchgang keine Änderungen gab - ist das Array sortiert und man kann aufhören
  • array[i], array[i+1] = array[i+1], array[i] tauscht zwei Elemente
Bubble Sort ist einfach zu verstehen, aber für große Arrays ist er langsam, daher werden für praktische Aufgaben oft schnellere Sortieralgorithmen verwendet.

🔥 Weitere Beiträge

Alle Beiträge
Was ist Vibe-Coding?
25. Jul '25, 21:51 Uhr

Was ist Vibe-Coding?

Vibe-Coding ist intuitives Programmieren in Tandem mit KI: ohne strenge Regeln, mit Musik, Inspir...

Was ist ein Integer-Overflow?
Programmierung (Програмування)15. Aug '25, 08:28 Uhr

Was ist ein Integer-Overflow?

Integer Overflow — das ist die Überlauf eines Ganzzahltyps, wenn der Wert die Grenze des Variable...

Was ist eine HAR-Datei (HTTP-Archiv)?
Programmierung (Програмування)25. Aug '25, 18:23 Uhr

Was ist eine HAR-Datei (HTTP-Archiv)?

HAR-Datei (HTTP-Archiv) — ist ein .har-Format, das das Protokoll der Browserinteraktion mit dem N...

Was ist faktoriale Komplexität?
Programmierung (Програмування)16. Sep '25, 19:03 Uhr

Was ist faktoriale Komplexität?

Faktorielle Komplexität ist das schnelle Wachstum der Anzahl der Varianten, wenn für n Elemente m...

Was ist NP-Komplexität?
Programmierung (Програмування)16. Sep '25, 19:31 Uhr

Was ist NP-Komplexität?

NP-Schwierigkeit ist eine Klasse von Problemen, bei denen es extrem schwierig ist, eine Lösung zu...

Was ist ivar in Ruby / Rails?
Programmierung (Програмування)19. Okt '25, 20:12 Uhr

Was ist ivar in Ruby / Rails?

ivar in Ruby ist eine Instanzvariable, die mit @ gekennzeichnet ist. In Rails überträgt sie Daten...