Kako funkcioniše Bubble Sort?

Bubble Sort je jednostavan algoritam sortiranja koji prolazi kroz niz više puta. U svakom prolazu upoređuje susedne elemente i zamenjuje ih ako su u pogrešnom redosledu. Najveći element "ispliva" na kraj niza nakon svakog prolaza.

Koraci algoritma

  1. Prođi kroz niz od početka do kraja.
  2. Uporedi susedne elemente.
  3. Ako je levi element veći od desnog – zameni ih.
  4. Ponovi postupak dok niz ne bude sortiran.

Primer rada

Niz: 5 3 8 4

1. prolaz:
5 i 3 → zamena → 3 5 8 4
5 i 8 → nema zamene
8 i 4 → zamena → 3 5 4 8

2. prolaz:
3 i 5 → nema zamene
5 i 4 → zamena → 3 4 5 8

Sortiran niz: 3 4 5 8

C++ Primer Koda

void bubbleSort(int niz[], int n) {
    for(int i = 0; i < n - 1; i++) {
        for(int j = 0; j < n - i - 1; j++) {
            if(niz[j] > niz[j + 1]) {
                swap(niz[j], niz[j + 1]);
            }
        }
    }
}