Obraz-algorytm

Sortowanie przez wstawianie
(z wyszukiwaniem binarnym)


Strona główna

Ważniejsze definicje: Algorytmy sortowania:

Porównanie algorytmów

Instrukcja użytkownika

Informacja o programie

Do góry Do tyłu

obraz-opis

Opis algorytmu

Algorytm ten jest usprawnieniem sortowania przez wstawianie, polegającym na tym, że do wyszukania pozycji dla elementu wstawianego do ciągu uporządkowanego, jest stosowany algorytm wyszukiwania binarnego. Dzięki temu usprawnieniu algorytm sortowania przez wstawianie osiąga efektywność zbliżoną do efektywności najlepszych algorytmów sortowania.

Należy jednak pamiętać, że chociaż algorytm ten jest bardzo efektywny ze względu na liczbę wykonywanych porównań, to jednak operacja wstawienia elementu do ciągu uporządkowanego powoduje przesunięcie tej części elementów, które są większe od wstawianego. Jeżeli sortowanie odbywa się w tablicy, to takie przesunięcie generuje dużą liczbę zamian elementów miejscami - w sumie rzędu n2.

Ponieważ w poniższej demonstracji główny nacisk jest położony na operacje porównania, algorytm osiąga wydajność porównywalną lub lepszą z efektywnością algorytmów sortowania szybkiego i sortowania stogowego. Praktycznie jednak duża liczba zamian zmienia nieco ten obraz.

obraz-działanie

Demonstracja

Poniższy aplet demonstruje działanie opisanego algorytmu sortowania. Dane do sortowania mogą być losowe, uporządkowane lub odwrotnie uporządkowane.

  • Zieloną i niebieską kropką są zaznaczone aktualnie porównywane elementy.
  • Żółtą linią jest oznaczona uporządkowana część ciągu.
  • Aby uruchomić demonstrację, naciśnij przycisk Start.
  • Aby zatrzymać demonstrację, naciśnij przycisk Stop.
  • Aby wykonać jeden krok algorytmu, naciśnij przycisk Krok.
  • Aby przyspieszyć demonstrację, naciśnij przycisk >.
  • Aby spowolnić demonstrację, naciśnij przycisk <.
  • Aby zmienić typ danych, użyj pola wyboru Typ danych.
  • Aby zmienić wielkość danych, użyj pola edycyjnego Wielkość danych i naciśnij przycisk Zmień. Wielkość danych musi być liczbą z zakresu od 5 do 300.

Sortowanie przez wstawianie (z binarnym wyszukiwaniem)

Typ danych:   Wielkość danych:  

Strona główna Sortowanie bąbelkowe Sortowanie przez wstawianie Sortowanie przez binarne wstawianie Sortowanie przez wybór Sortowanie przez scalanie Sortowanie przez scalanie - rozszerzone Sortowanie szybkie Sortowanie stogowe Sortowanie stogowe rozszerzone Porównanie algorytmów