Přeskočit na hlavní obsah
Přeskočit hlavičku
Ukončeno v akademickém roce 2012/2013

Algoritmy II

Typ studia bakalářské
Jazyk výuky čeština
Kód 460-2003/01
Zkratka ALG II
Název předmětu česky Algoritmy II
Název předmětu anglicky Algorithms II
Kreditů 6
Garantující katedra Katedra informatiky
Garant předmětu doc. Mgr. Jiří Dvorský, Ph.D.

Osnova předmětu

Náplň přednášek

Úvodní přednáška, organizační záležitosti, souhrn nutných znalostí z předmětu Algoritmy I
Objektově orientované paradigma, objekt, třída, atribut, metoda
OOP v C++, dynamická alokace paměti
Dědičnost
Polymorfismus, virtuální metody
Abstraktní datové typy, využití OOP
Graf jako datová struktura, průchody do hloubky a do šířky
Binární stromy, definice, vyhledávání
Binární stromy, vkládání, rušení vrcholů, průchody stromem
Přehled vyvážených binárních stromů, B-stromy
Hašování
Vyhledávání v textu


Náplň počítačových cvičení

Opakování z předmětu Algoritmy I
Implementace třídy v C++
Konstruktory a destruktory
Dynamická alokace paměti
Dědičnost, ukázka hierarchie tříd
Polymorfismus, čistě virtuální metody
Grafy, možnosti implementace grafů
Průchody grafem
Binární stromy
Využití hašovacích tabulek
Vyhledávání v textu


Náplň projektů

Zadání projektů budou směřovat ke zvládnutí OOP.

Povinná literatura

LEVITIN, Anany. Introduction to the Design and Analysis of Algorithms. 3rd ed. Boston: Pearson, 2012. ISBN 978-0-13-231681-1 .
CORMEN, Thomas H. Introduction to algorithms. 2nd ed. Cambridge, Mass.: MIT Press, 2001. ISBN 02-620-3293-7.
SEDGEWICK, Robert. Algoritmy v C. Praha: SoftPress, 2003. ISBN 80-864-9756-9.
WRÓBLEWSKI, Piotr. Algoritmy. Brno: Computer Press, 2015. ISBN 978-80-251-4126-7 .
WIRTH, N. Algoritmy a štruktúry údajov, Alfa, Bratislava 1989.
Studijní opora (skripta), dostupné na stránkách garanta předmětu, www.cs.vsb.cz/dvorsky

Doporučená literatura

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