Projekt 2 - specyfikacja

Transkrypt

Projekt 2 - specyfikacja
Algorytmy i struktury danych semestr zimowy 2016/2017
Projekt II.
Cel projektu: wykonanie aplikacji w języku Java bez wykorzystania gotowych klas, w której
zastosowane zostaną algorytmy poznane na kursie Algorytmy i struktury danych I. Na projekt
składa się działająca aplikacja oraz sprawozdanie, w którym zostaną opisane najważniejsze
elementy aplikacji oraz wybrane algorytmy i ich analiza wraz z wynikami testów.
Student wybiera jeden z poniższych tematów projektów.
Drzewa BST:
Za realizację poniższych zadań student może uzyskać maksymalnie ocenę dobry.
Aplikacja wykonana przez studenta ma umożliwiać:
1. dodawanie i usuwanie elementów drzewa BST;
2. wyświetlanie elementów drzewa BST w porządku inorder, preorder i postorder;
3. utworzenie losowego drzewa BST.- drzewo należy skonstruować poprzez wstawianie kluczy
w losowej kolejności do początkowo pustego drzewa.
4. sortowanie kluczy z wykorzystaniem drzewa BST.
5. obliczanie wysokości drzewa BST.
Sprawozdanie musi także zawierać:
 analizę złożoności obliczeniowej algorytmu sortowania (pkt. 4);
 analizę średniej wysokości losowo zbudowanego drzewa BST;
 analizę kosztów wykonania podstawowych operacji na drzewie BST.
Drzewa czerwono-czarne:
Za realizację poniższych zadań student może uzyskać ocenę bardzo dobrą.
Aplikacja wykonana przez studenta ma umożliwiać:
1. dodawanie i usuwanie elementów drzewa czerwono-czarnego;
2. wyświetlanie elementów drzewa czerwono-czarnego w porządku inorder, preorder i postorder;
3. utworzenie losowego drzewa czerwono-czarnego- drzewo należy skonstruować poprzez
wstawianie kluczy w losowej kolejności do początkowo pustego drzewa.
4. wyszukiwania kluczy z wykorzystaniem drzewa czerwono-czarnego.
Sprawozdanie musi także zawierać:
 analizę złożoności obliczeniowej wyszukiwania elementów w drzewach czerwonoczarnych;
 analizę kosztów wykonania podstawowych operacji na drzewach czerwono-czarnych.

Podobne dokumenty