Prosilbym o napisanie jakiegos przykladu z uzyciem sortowania pozycyjnego dla np czegos takiego:
Kod: Zaznacz cały
int tab[4]={100,423,234,987};
Kod: Zaznacz cały
int tab[4]={100,423,234,987};
Kod: Zaznacz cały
^ - kolumna analizowana
100 100 100 100
423 -> 423 -> 423 -> 234
234 234 234 423
987 987 987 987
^ ^ ^ ^
Kod: Zaznacz cały
sortowanie_pozycyjne(*tablica, n_elementow)
{
int i;
for (i = 0 ; i<n_elementow ; i++) sortowanie_stabilne_wg_i-tej_pozycji();
}
czyli na nasze, jeśli masz np: 62 i potem 68, to po stabilnym sortowaniu wg. cyfry dziesiątek, muszą zostać w tej samej kolejności, jak przed sortowaniem, czyli sortowanie wg. klucza 10^1 nie może zaburzyć sortowanie wg. 10^0, bo inaczej ten algorytm się wyłożywikipedia pisze: stabilne algorytmy sortowania utrzymują kolejność występowania dla elementów o tym samym kluczu (klucz - cecha charakterystyczna dla każdego elementu zbioru, względem której jest dokonywane sortowanie). Oznacza to, że dla każdych elementów R i S o tym samym kluczu, jeśli R wystąpiło przed S to po sortowaniu stabilnym R będzie przed S;