Projekt 1 Sortowanie Zalozenia


PROJEKT 1 - ZAAOŻENIA
KRÓTKI OPIS ZADANIA
Projekt 1 przewiduje porównanie efektywności działania dwóch wybranych algorytmów sortowania.
Pierwszym zadaniem jest napisanie w języku C++ dwóch programów  testowego oraz głównego, który
posłuży do właściwego zbadania wspomnianych algorytmów. Drugim zadaniem jest wykonanie
podsumowującego sprawozdania.
PROGRAMY
PROGRAM 1 - TESTOWY
1. Tworzymy plik tekstowy o nazwie DaneTestowe.txt, w którym umieszczamy liczbę n elementów (liczb
naturalnych) przeznaczonych do sortowania, a następne wartości tych liczb.
2. Wczytujemy dane z pliku DaneTestowe.txt do programu. Elementy, które będą sortowane wstawiamy do
tablicy dynamicznej o długości n. Sortujemy elementy wykorzystując do tego celu dwa zadane algorytmy
sortowania. Elementy tablicy przed sortowaniem oraz po sortowaniu każdą z metod wypisujemy na ekran.
PROGRAM 2  GAÓWNY (PORÓWNANIE ALGORYTMÓW SORTOWANIA)
Zadaniem Programu 2 jest porównanie dwóch wybranych algorytmów sortowania ze względu na czas
(w sekundach) potrzebny na ułożenie elementów w kolejności rosnącej w zależności od liczby elementów oraz
kolejności ich ułożenia. Na potrzeby każdego z opisanych w Tabeli (zob. sprawozdanie) przypadków
generujemy zbiór danych testowych wybierając taką liczbę elementów n, dla której najlepiej widać różnice
pomiędzy algorytmami, a następnie sprawdzamy czasy działania procedur. Wszystkie zbiory danych
wejściowych generujemy automatycznie do odpowiednich plików tekstowych (DanePrzypadek1.txt,
DanePrzypadek2.txt oraz DanePrzypadek3.txt) i odczytujemy w programie. Do utworzenia zbioru danych
testowych w Przypadku 1 możemy posłużyć się losowym generowaniem liczb w języku C++.
UWAGI
1. W programach używamy wyłącznie tablic dynamicznych o rozmiarze zależnym od n.
2. Algorytmy sortowania realizujemy w dwóch osobnych funkcjach, do których przekazujemy liczbę n
elementów tablicy oraz tablicę elementów.
3. Po zakończeniu działania funkcji posortowane elementy tablicy dostępne są w programie.
ALGORYTMY SORTOWANIA
1. Sortowanie przez proste wstawianie.
2. Sortowanie przez wstawianie połówkowe.
3. Sortowanie przez proste wybieranie.
4. Sortowanie przez prostą zamianę (sortowanie bąbelkowe).
5. Sortowanie mieszane.
6. Sortowanie Stella.
7. Sortowanie przez kopcowanie.
8. Sortowanie szybkie.
9. Sortowanie szybkie  wersja rekurencyjna.


Wyszukiwarka