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

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

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" d...

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 ein Zustand, in dem du nicht strengen Programmierregeln folgst, sondern einfach d...

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

Was ist ein Integer-Overflow?

Sie haben einen Zähler, der nur bis zu einer bestimmten Zahl zählen kann. Zum Beispiel ein Tasche...

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

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

HAR-Datei (HTTArchiv) - ist ein spezielles Dateiformat .har, in dem das Protokoll der Interaktion...

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

Was ist faktoriale Komplexität?

Fakultative Komplexität - ist eine Situation, in der die Anzahl der Varianten oder Kombinationen ...

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

Was ist NP-Komplexität?

NP-Schwierigkeit - ist eine Klasse von Aufgaben, für die es sehr schwierig ist, eine Lösung zu fi...

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

Was ist ivar in Ruby / Rails?

ivar - ist eine Abkürzung für instance variable (Instanzvariable). In Ruby wird sie mit @ vor dem...