Algoritmy II

Prezenční studium

Anotace předmětu

Výuka

Úkoly a jejich hodnocení

Studijní literatura

Software pro výuku

Ostatní učební materiály

Anotace předmětu

Předmět navazuje na obdobný předmět Algoritmy I. Náplní předmětu jsou další strategie algoritmického řešení úloh (dynamické programování, hladové algoritmy atd.) a typické příklady jejich užití.

Garant předmětu

Garantem předmětu je doc. Mgr. Jiří Dvorský, Ph.D.

Prerekvizity


Výuka

Přednášky

Přednášky probíhají každé úterý 10:45 až 12:15 v učebně EC1.

Témata přednášek

Níže uvedená témata přednášek budou rozdělena do jednotlivých přednášek na celý semestr.

  1. Úvodní přednáška
  2. Strategie řešení transformuj a vyřeš
  3. Záměna paměťové a časové složitosti
  4. Dynamické programování
  5. Hladové algoritmy
  6. Strategie řešení iterativním zlepšováním
  7. Meze možností algoritmického řešení problémů. P, NP a NP-úplné problémy.
  8. Zdolávání mezí možností algoritmického řešení problémů

Cvičení

Docházka

Konzultační hodiny


Úkoly a jejich hodnocení

Hodnocení v předmětu Algoritmy II se skládá ze tří částí: průběžné aktivity na cvičeních, obhajoby projektu a závěrečné písemné práce. Všechny části jsou povinné a je nutné z každé části získat aspoň minimální počet bodů.

Průběžná aktivita na cvičeních

Obhajoba projektu

Závěrečná písemná práce

Hodnocení úkolů

Pro absolvování předmětu je potřeba splnit všechny výše uvedené úkoly. A zároveň u všech úkolů je nutné získat aspoň minimální počet bodů.

 Minimální počet bodůMaximální počet bodů
Průběžná aktivita na cvičeních1530
Obhajoba projektu1530
Závěrečná písemná práce2140
Celkem51100

Obecné pokyny ke všem úkolům


Studijní literatura

Povinná literatura

  1. LEVITIN, Anany., 2012. Introduction to the Design and Analysis of Algorithms. 3rd ed. Boston: Pearson. ISBN 978-0-13-231681-1.
  2. CORMEN, Thomas H., 2001. Introduction to Algorithms. 2nd ed. Cambridge, Mass.: MIT Press. ISBN 02-620-3293-7.
  3. CORMEN, Thomas H., Charles Eric LEISERSON, Ronald L. RIVEST a Clifford STEIN, [2022]. Introduction to algorithms. Fourth edition. Cambridge, Massachusetts: The MIT Press. ISBN 978-026-2046-305.
  4. SEDGEWICK, Robert, 2003. Algoritmy v C. Praha: SoftPress. ISBN 80-864-9756-9.
  5. MAREŠ, Martin a Tomáš VALLA, 2017. Průvodce labyrintem algoritmů [online]. Praha: CZ.NIC, z.s.p.o. [cit. 2020-10-03]. CZ.NIC. ISBN 978-80-88168-19-5. Dostupné z: https://knihy.nic.cz/
  6. WRÓBLEWSKI, Piotr, 2015. Algoritmy. Brno: Computer Press. ISBN 978-80-251-4126-7.
  7. WIRTH, Niklaus, 1988. Algoritmy a štruktúry údajov. Bratislava: Alfa. ISBN 063-030-87.

Doplňková literatura

  1. STROUSTRUP, Bjarne, 1997. C++ programovací jazyk. Praha: Softwarové Aplikace a Systémy. ISBN 80-901-5072-1.
  2. VIRIUS, Miroslav, 2005. Pasti a propasti jazyka C++. 2., aktualiz. a rozš. vyd. Brno: CP Books. ISBN 80-251-0509-1.
  3. SCHILDT, Herbert, 2001. Nauč se sám C++: [poznej, vyzkoušej, používej]. Praha: SoftPress. ISBN 80-864-9713-5.
  4. ECKEL, Bruce, 2000. Myslíme v jazyku C++. Praha: Grada. Knihovna programátora (Grada). ISBN 80-247-9009-2.

Software pro výuku

Vývojové prostředí pro C++

Ostatní software

Další software, který se Vám bude hodit při tvorbě Vašich programů:


Ostatní učební materiály

Prezentace z přednášek