Sortowanie pozycyjne liczb

Algorytm pozycyjnego sortowania liczb polega na wielokrotnym sortowaniu danych liczb ze względu na wartości cyfr na kolejnych pozycjach. Zaczynamy od cyfry jedności, potem porównujemy setki, tysiące itd. Po uwzględnieniu wszystkich cyfr, algorytm się kończy. Do częściowych sortowań wykorzystujemy stabilny algorytm sortowania. Nie może on zmieniać kolejności liczb o tej samej wartości. Przykłady takich algorytmów to np. sortowanie bąbelkowePxgkD2R5Ysortowanie bąbelkowesortowanie przez zliczaniePT84uETiIsortowanie przez zliczanie.

Problem 1

W lipcu 2008 roku CBOS przeprowadziło ankietę. Treść brzmiała następująco:

Niedawno Irlandczycy odrzucili w referendum traktat lizboński. Czy pana/pani zdaniem prezydent Polski powinien w tej sytuacji ratyfikować traktat lizboński, czy też nie?

Wyniki ankiety:

  • 34% odpowiedziało: „Trudno powiedzieć”,

  • 29% odpowiedziało: „Raczej tak”,

  • 23% odpowiedziało: „Zdecydowanie tak”,

  • 10% odpowiedziało: „Raczej nie”,

  • 4% odpowiedziało: „Zdecydowanie nie”.

Napisz program sortujący niemalejąco, wykorzystując sortowanie pozycyjne liczb (radix sort). Wykorzystaj pomocniczo sortowanie przez zliczanie. Swój program przetestuj dla tablicy z wynikami ankiety w postaci liczby punktów procentowych.

Specyfikacja:

Dane:

  • dane – jednowymiarowa tablica liczb naturalnych; dane do posortowania

  • liczbaElementow – liczba naturalna; rozmiar tablicy dane

  • liczbaCyfr – liczba naturalna; maksymalna liczba cyfr w reprezentacji liczbowej wyników ankiety

Wynik:

  • dane – jednowymiarowa tablica posortowana niemalejąco

RGytau4Hgd6ZK
Wybierz jedno nowe słowo poznane podczas dzisiejszej lekcji i ułóż z nim zdanie.
Polecenie 1

Porównaj swoje rozwiązanie z przedstawionym w filmie.

R1eyUpwKEILDx
Film nawiązujący do treści materiału: Algorytm i realizacja Sortowania pozycyjnego liczb w języku Java.

Kod programu zaprezentowanego w filmie:

R1etRwD3mTk46

Przycisk do pobrania pliku JAVA z kodem źródłowym.

Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.
Plik JAVA o rozmiarze 1.32 KB w języku polskim
Polecenie 2

Dodaj do swojego programu komentarze tak, żeby był zrozumiały dla osoby, która nie potrafi programować.