Kiedy algorytm sortowania jest stabilny?

Spisu treści:

Kiedy algorytm sortowania jest stabilny?
Kiedy algorytm sortowania jest stabilny?

Wideo: Kiedy algorytm sortowania jest stabilny?

Wideo: Kiedy algorytm sortowania jest stabilny?
Wideo: Stable Vs Unstable Sorts 2024, Grudzień
Anonim

Algorytmy stabilnego sortowania utrzymują względną kolejność rekordów z równymi kluczami (tj. wartościami). Oznacza to, że algorytm sortowania jest stabilny, jeśli za każdym razem, gdy istnieją dwa rekordy R i S z tym samym kluczem i z R pojawiającym się przed S na oryginalnej liście, R pojawi się przed S w posortowanej lista.

Które algorytmy sortowania są stabilne?

Kilka popularnych algorytmów sortowania jest z natury stabilnych, takich jak Merge Sort, Timsort, sortowanie zliczające, sortowanie przez wstawianie i sortowanie bąbelkowe. Inne, takie jak Quicksort, Heapsort i Selection Sort są niestabilne.

Co sprawia, że sortowanie jest stabilne?

Algorytm sortowania jest uważany za stabilny jeśli dwa obiekty z takimi samymi kluczami pojawiają się w tej samej kolejności w posortowanych danych wyjściowych, jak w tablicy wejściowej do sortowania. Niektóre algorytmy sortowania są z natury stabilne, takie jak sortowanie przez wstawianie, sortowanie przez scalanie, sortowanie bąbelkowe itp.

Co to jest algorytm stabilnego sortowania na przykładzie?

Niektóre przykłady stabilnych algorytmów to Sortowanie przez scalanie, Sortowanie przez wstawianie, Sortowanie bąbelkowe i Sortowanie drzewa binarnego Podczas gdy, Szybkie sortowanie, Sortowanie sterty i Sortowanie przez wybór są niestabilnym algorytmem sortowania. Jeśli pamiętasz, Kolekcje. Metoda sort z frameworku Java Collection używa iteracyjnego sortowania przez scalanie, które jest stabilnym algorytmem.

Które algorytmy sortowania działają, a które są stabilne?

Uwaga:

  • Sortowanie bąbelkowe, sortowanie przez wstawianie i sortowanie przez wybór to algorytmy sortowania w miejscu. …
  • Sortowanie bąbelkowe i sortowanie przez wstawianie mogą być stosowane jako stabilne algorytmy, ale sortowanie przez wybór nie może (bez znaczących modyfikacji).
  • Sortowanie przez scalanie to stabilny algorytm, ale nie w miejscu.

Zalecana: