Seminář 3 (Úkoly)

Úkol č.1

Implementujte statickou metodu int[] odd(int[] foo) vracející pole čísel, kde budou pouze lichá čísla z argumentu foo.

Úkol č.2

Implementujte statickou metodu List<Object> odd(List<Object> foo) vracející seznam čísel, kde budou pouze lichá čísla foo. Pokud argument foo obsahuje objekt, který není celé číslo, je tento objekt ignorován. Tuto funkcionalitu ověřte.

Úkol č.3

Implementujte statickou metodu List<Integer> oddNumbers(List<Integer> foo) vracející seznam čísel, kde budou pouze lichá čísla z foo.

Úkol č.4

S využítím třídy Point z minulého cvičení implementujte statickou metodu Point nearest(Point p, List<Point> points), která vrací ze seznamu points bod, který je nejblíže bodu p.

Úkol č.5

Implementujte funkce int[] merge(int[], int[]) a List<Integer> merge(List<Integer>, List<Integer>), které mají na vstupu setříděné posloupnosti celých čísel a provedou jejich ,,slití'', které vrátí na výstup jako nové setříděné pole/seznam.

Úkol č.6

S využitím metody List<Integer> merge(List<Integer>, List<Integer>) implementuje metodu List<Integer> mergeSort(List<Integer>), implementující algoritmus MergeSort.

Doplňkový úkol

Ověřte si rychlost metody mergeSort, když budete v metodě merge vytvářet seznam jako ArrayList a když budete používat LinkedList. Využijte metody System.currentTimeMillis().

Vyřešené úkoly zašlete do 15.10.2014 17:00 CET na email petr.krajca (zavináč) upol.cz s předmětem ZP3JV. Zasílejte pouze zdrojové kódy. Pokud chcete zdrojové kódy poslat zkomprimované, použijte buď formát zip nebo kombinaci tar+gz.


Last update on 5. 11. 2014 17:56
Powered by Schemik.

© Petr Krajča, 2010, 2012
petr.krajca (at) upol.cz