Algorytmy i struktury danych, USM, zaoczne. Ćwiczenie 2.
Algorytmy sortowania tablic
Cel ćwiczenia: Implementacja wybranych algorytmów sortowania tablic o czasie wielomianowym: proste wstawianie, proste wybieranie, prosta zamiana (bąbelkowe), malejące przyrosty (Shella). Algorytmy sortowania o czasie logarytmicznym: qsort, kopcowanie, łączenie. Porównanie efektywności czasowej algorytmów.
1. Opracować funkcję, która umożliwia posortowanie tablicy liczb całkowitych w oparciu o algorytm prostego wstawiania.
2. Opracować funkcję, która umożliwia posortowanie tablicy liczb całkowitych w oparciu o algorytm prostego wybierania.
3. Opracować funkcję, która umożliwia posortowanie tablicy liczb całkowitych w oparciu o algorytm bąbelkowy (prostej zamiany).
4. Opracować funkcję, która umożliwia posortowanie tablicy liczb całkowitych w oparciu o algorytm malejących przyrostów (Shella).
5. Przedstawić funkcję, która realizuje algorytm sortowania szybkiego (qsort) dla tablicy liczb całkowitych.
6. Przedstawić funkcję, która realizuje algorytm sortowania przez kopcowanie dla tablicy liczb całkowitych.
7. Przedstawić funkcję, która realizuje algorytm sortowania przez łączenie dla tablicy liczb całkowitych.
8. Wyznaczyć czasy działania algorytmów w przypadku sortowania tablicy liczb całkowitych (wykorzystać funkcję pomiaru czasu). Wyprowadzić na ekran czasy działania wszystkich opracowanych funkcji sortowania dla:
a) tablic losowych, b) tablic posortowanych.