Přeskočit na hlavní obsah
Přeskočit hlavičku
Terminated in academic year 2020/2021

Algoritmy I

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

Subject syllabus

Náplň přednášek

Úvodní přednáška, organizační záležitosti
První program v C++, algoritmus, program, překlad, procesor, proces
Proměnné, konstanty, datové typy
Řídící konstrukce jazyka (sekvence, větvení, cyklus)
Strukturované programování v C++, funkce a jejich parametry, volání funkcí
Pole
Vyhledávání v poli (sekvenční, půlením intervalu)
Rekurze, vymezení pojmu, příklady, jednoduchý backtracking
Třídění, vymezení problému, adresní třídění
Základní třídící algoritmy (třídění vkládáním, výběrem, bublinové)
Pokročilé třídící algoritmy (QuickSort, HeapSort, MergeSort)

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

Seznámení se s vývojovým prostředím, plánováno Visual Studio 2015
Implementace a ladění triviálních programů - Hello world
Implementace a ladění programů se základními konstrukcemi např. výpočet největšího společného dělitele
Práce s funkcemi, parametry volané hodnotou, odkazem, konstantní parametry
Práce s polem
Implementace algoritmů vyhledávání v poli
Implementace zásobníku, ukázky využití
Rekurzivní funkce
Backtracking
Třídící algoritmy

Náplň projektů

Zadání projektů budou směřována k využití třídících a vyhledávacích algoritmů, práci s poli a podobně.

Literature

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

Advised literature

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.