Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2022/2023

Algoritmy a grafy 1

Předmět není vypsán Nerozvrhuje se
Kód Zakončení Kredity Rozsah Jazyk výuky
BI-AG1 Z,ZK 6 2P+2C česky
Garant předmětu:
Dušan Knop
Přednášející:
Dušan Knop, Tomáš Valla
Cvičící:
Michal Dvořák, Radek Hušek, Dušan Knop, Jan Matyáš Křišťan, Xuan Thang Nguyen, Jan Pokorný, Šimon Schierreich, Martin Slávik, Ondřej Šofr, Tomáš Valla
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

Předmět pokrývá to nejzákladnější z efektivních algoritmů, datových struktur a teorie grafů, které by měl znát každý informatik. Spolupracuje se souběžně vyučovanýmI předměty BI-AAG a BI-ZDM, ve kterých studenti získají znalosti a dovednosti nezbytné pro vyhodnocování operační a paměťové složitosti algoritmů a naučí se prakticky používat asymptotickou matematiku.

Na tento předmět obsahově navazuje magisterský předmět

Požadavky:

Předpokládá se schopnost aktivního algoritmického řešení základních typů úloh, znalost nějakého vyššího programovacího jazyka (Java, C++) a znalost základních pojmů z matematické analýzy a kombinatoriky. Předmět předpokládá, že student souběžně studuje BI-AAG a BI-ZDM.

Osnova přednášek:

1. Motivace a úvod do teorie grafů.

2 Základní definice a pojmy teorie grafů I.

3 Základní definice a pojmy teorie grafů II.

4 Řadící algoritmy O(n^2). Binární haldy.

5 Nafukovací pole, amortizovaná složitost, binomiální haldy.

6 Vyhledávací stromy a jejich vyvažování.

7 Úvod do randomizace, hešování.

8 Rekurzivní algoritmy a metoda Rozděl a panuj.

9 QuickSort. Speciální algoritmy řazení.

10 Dynamické programování.

11 Minimální kostry grafu.

12 Nejkratší cesty v grafech.

Osnova cvičení:

1. Motivace a úvod do teorie grafů.

2. Základní definice a pojmy teorie grafů I.

3. Základní definice a pojmy teorie grafů II. 1. progtest

4. Řadící algoritmy O(n^2). Binární haldy.

5. Nafukovací pole, amortizovaná složitost, binomiální haldy.

6. Vyhledávací stromy a jejich vyvažování. 2. progtest

7. Pravděpodobnostní algoritmy a jejich složitost. QuickSort.

8. Rozptylování (hešování) a vyhledávací tabulky.

9. Rekurzivní algoritmy a metoda Rozděl a panuj.

10. Semestrální písemka.

11. Dynamické programování. 3. progtest

12. Minimální kostry a nejkratší cesty v grafech.

Cíle studia:
Studijní materiály:

[1] Cormen, T. H. - Leiserson, C. E. - Rivest, R. L. - Stein, C.: Introduction to Algorithms, 3rd Edition, MIT Press, 2009, 978-0262033848,

[2] Gibbons, A.: Algorithmic Graph Theory, Cambridge University Press, 1985, 978-0521288811,

[3] Gross, J. L. - Yellen, J. - Zhang, P.: Handbook of Graph Theory, 2nd Edition (Discrete Mathematics and Its Applications), Chapman and Hall/CRC, 2013, 978-1439880180,

Poznámka:

Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/BI-AG1/

Na tento předmět navazuje v magisterském studiu předmět Paralelní a distribuované programování.

Další informace:
https://courses.fit.cvut.cz/BI-AG1/
Pro tento předmět se rozvrh nepřipravuje
Předmět je součástí následujících studijních plánů:
Platnost dat k 25. 9. 2023
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet3458106.html