środa, 9 kwietnia 2014

Tydzień 8: klasówka przygotowawcza, interfejsy

Przypomnienie: 23 kwietnia (środa po świętach) na wykładzie jest klasówka.

Ćwiczenia

Aukcje (klasówka poprawkowa z roku 2008/2009).

Laboratorium

  1. Zaimplementuj drzewo BST przechowujące liczby całkowite. Chcemy uniknąć dużej liczby testów (czy jest lewe dziecko, czy jest prawe dziecko,...). Wskazówka: trzeba odpowiednio reprezentować puste drzewo przy pomocy polimorfizmu/interfejsów.
  2. Kolejka priorytetowa to struktura danych, do której można wstawiać elementy i z niej je pobierać. Kolejność pobierania elementów zależy od priorytetu tych elementów, najpierw wydawane są elementy o wyższym priorytecie. Zdefiniuj i zaimplementuj interfejs KolejkaPriorytetowa z operacjami:
    • void dodaj(int priorytet, String s) – dodaje do kolejki nowy napis z żądanym priorytetem.
    • String[] pobierz() – pobiera z kolejki wszystkie napisy obiekty o najmniejszej wartości priorytetu (może być ich wiele, stad wynikiem jest tablica). Pobrane elementy są usuwane z kolejki.
    • boolean czyPusta() – wynikiem jest true wtedy i tylko wtedy, gdy w kolejce nie ma już elementów.
    Zdefiniuj klasę realizującą ten interfejs za pomocą jednej z metod: lista posortowana, kopiec, drzewo BST.
    Napisz program, który wczyta ze standardowego wejścia kilka napisów, a następnie wypisze wczytany zbiór posortowany (za pomocą KolejkiPriorytetowej) ze względu na liczbę wystapień litery a w napisie.

Praca domowa nr 7 

Arimaa (klasówka poprawkowa z roku 2011/2012). Rozwiązanie należy oddać w wersji papierowej, napisane ręcznie. Termin oddania: 16 kwietnia 2014 r. Tej pracy domowej nie można poprawiać.

Brak komentarzy:

Prześlij komentarz