Szukaj…


Parametry

Parametr Opis
Stabilność Algorytm sortowania jest stabilny, jeśli zachowuje względną kolejność równych elementów po sortowaniu.
W miejscu Algorytm sortowania jest stosowany, jeśli sortuje przy użyciu tylko pamięci pomocniczej O(1) (nie licząc tablicy, którą należy posortować).
Najlepsza złożoność przypadku Algorytm sortowania ma najlepszą złożoność czasu przypadku O(T(n)) jeśli jego czas działania wynosi co najmniej T(n) dla wszystkich możliwych danych wejściowych.
Średnia złożoność sprawy Algorytm sortowania ma średnią złożoność czasu obserwacji O(T(n)) jeśli jego czas działania, uśredniony dla wszystkich możliwych danych wejściowych , wynosi T(n) .
Najgorsza złożoność przypadku Algorytm sortowania ma najgorszą złożoność czasu O(T(n)) jeśli jego czas działania wynosi co najwyżej T(n) .

Stabilność w sortowaniu

Stabilność w sortowaniu oznacza, czy algorytm sortowania zachowuje względną kolejność kluczy równych oryginalnym wejściom w wynikowym wyniku.

Mówi się, że algorytm sortowania jest stabilny, jeśli dwa obiekty z jednakowymi kluczami pojawią się w tej samej kolejności na posortowanym wyjściu, tak jak pojawiają się w nieposortowanej tablicy wejściowej.

Rozważ listę par:

(1, 2) (9, 7) (3, 4) (8, 6) (9, 3)

Teraz posortujemy listę według pierwszego elementu każdej pary.

Stabilne sortowanie tej listy spowoduje wyświetlenie poniższej listy:

(1, 2) (3, 4) (8, 6) (9, 7) (9, 3)

Ponieważ (9, 3) pojawia się również po (9, 7) na oryginalnej liście.

Niestabilne sortowanie spowoduje wyświetlenie poniższej listy:

(1, 2) (3, 4) (8, 6) (9, 3) (9, 7)

Sortowanie niestabilne może generować taki sam wynik jak sortowanie stabilne, ale nie zawsze.

Dobrze znane rodzaje stabilne:

Znane rodzaje niestabilne:



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow