Sortowanie kubełkowe
Stronę tą wyświetlono już: 6454 razy
Sortowanie kubełkowe polega na podzieleniu danych d na mniejsze częściowo posegregowane według określonych kryteriów partie danych, które w późniejszym czasie są sortowane indywidualnie. Pewnym szczególnym wariantem tego typu sortowania jest wcześniej już omawiany algorytm sortowania przez zliczanie. Dla danych liczbowych można algorytm sortowania kubełkowego przedstawić w sposób bardziej elastyczny wymagający znajomości maksimum i minimum wartości występujących w tablicy danych d. Wtedy to bowiem można określić kryteria przynależności danego elementu do pojemnika np. dla podziału zakresu danych zbioru d na k części zakres danych dla i-tego pojemnika będzie określony następującymi granicami:
gdzie:
- zd - dolna granica przynależności;
- zg - górna granica przynależności
Przykład kodu wykorzystującego powyższą zasadę do sortowania wylosowanych liczb zmiennoprzecinkowych:
Złożoność obliczeniowa w najgorszym przypadku dla tego algorytmu wynosi n2 w najlepszym n.
Tytuł:
Algorytmy. Ilustrowany przewodnik
Autor:
Aditya Bhargava
Tytuł:
Algorytmy. Struktury danych i złożoność obliczeniowa
Autor:
Feliks Kurp
Tytuł:
Algorytmy w Pythonie. Techniki programowania dla praktyków
Autor:
Piotr Wróblewski
Tytuł:
Matematyka dyskretna dla praktyków. Algorytmy i uczenie maszynowe w Pythonie
Autor:
Ryan T. White, Archana Tikayat Ray
Tytuł:
Algorytmy kryptograficzne w Pythonie. Wprowadzenie
Autor:
Shannon W. Bray
Tytuł:
Algorytmy sztucznej inteligencji. Ilustrowany przewodnik
Autor:
Rishal Hurbans
Tytuł:
Algorytmy bez tajemnic
Autor:
Thomas H. Cormen
Tytuł:
Algorytmy dla bystrzaków
Autor:
John Paul Mueller, Luca Massaron
Tytuł:
Algorytmy Data Science. Siedmiodniowy przewodnik. Wydanie II
Autor:
David Natingga
Tytuł:
Algorytmy uczenia maszynowego. Zaawansowane techniki implementacji
Autor:
Giuseppe Bonaccorso