Przejdź do treści głównej
INF.04Algorytmika i Struktury Danych

Sortowanie bąbelkowe (Bubble Sort)

Prosty algorytm sortowania o złożoności O(n^2), wielokrotnie porównujący sąsiednie elementy i zamieniający je miejscami, jeśli są w złej kolejności.

Zasada działania Bubble Sort:

Algorytm wielokrotnie przegląda tablicę, porównując parę sąsiednich elementów: jeśli lewy element jest większy od prawego, zamienia je miejscami (swap). Po każdym pełnym przejściu największy element 'wypływa' jak bąbelek na koniec tablicy.

CSHARP
for (int i = 0; i < n - 1; i++) {
    for (int j = 0; j < n - i - 1; j++) {
        if (tab[j] > tab[j + 1]) {
            int temp = tab[j];
            tab[j] = tab[j + 1];
            tab[j + 1] = temp;
        }
    }
}

Złożoność:

  • Czasowa: O(n²) (zarówno średnia, jak i pesymistyczna).
  • Pamięciowa: O(1) – sortowanie w miejscu (in-place).
  • Stabilność: Jest algorytmem stabilnym (nie zmienia względnej kolejności elementów o równych wartościach).

Chcesz sprawdzić to pojęcie w praktyce?

Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Sortowanie bąbelkowe (Bubble Sort) lub rozpocznij trening.