Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Autor: SeaMonster131
Inne materiały

Sortowanie bąbelkowe (ang. bubble sort)

[algorytm] Opis działania algorytmu sortowania bąbelkowego wraz z kodem źródłowym.
Złożoność czasowa: O(n2)

Sortowanie bąbelkowe jest bardzo łatwe - sprawdzamy czy następny element tablicy jest większy od aktualnego, jeżeli tak, to zamieniamy te elementy miejscami. Aby skrócić czas wykonywania całego algorytmu kosztem dłuższego czasu przejścia przez jedną pętlę, można utworzyć flagę przechowującą zmiany. Flaga jest zerowana na wejściu w pętli, w przpadku zmiany jest ona podnoszona. Po wykonaniu pętli sprawdzamy czy zaszła zmiana, jeżeli
nie to kończymy sortowanie.

C/C++
void Sortowanie( int tab[], int size )
{
    for( int i = 0; i < size; i++ )
    {
        for( int j = 0; j < size - 1; j++ )
        {
            if( tab[ j ] > tab[ j + 1 ] )
                 swap( tab[ j ], tab[ j + 1 ] );
           
        }
    }
}

Informacje: http://pl.wikipedia.org/wiki/Sortowanie_b%C4%85belkowe