Předmět si klade za cíl seznámit posluchače se základy algoritmizace a začít u nich rozvíjet analytické myšlení. Posluchači budou během semestru vypracovávat zadané úlohy. Více v sekci Cvičení.
Účast na cvičeních je povinná. Detailní informace k jednotlivým cvičením budou uvěřejňovány ve složce cvičení.
Účast na přednáškách je doporučená, ale na cvičení se vyžadují znalosti, které posluchač nabyl na přednáškách.
Konzultační hodiny | Místnost | Poznámka | ||
---|---|---|---|---|
doc. Ing. Jiří Vokřínek, Ph.D. | po domluvě emailem | jiri.vokrinek@fel.cvut.cz | KN:E-333b | Přednášející |
RNDr. Ladislav Serédi | po domluvě emailem | seredlad@fel.cvut.cz Messenger: ladislav.seredi Skype: zarand0k | KN:E-431 | Cvičící |
Materiály mohou být průběžně aktualizovány – takto jsou označeny materiály z minulého roku beze změn a takto revidované pro aktuální ZS 2019/2020.
1 | 24.9.2019 | Úvod. Algoritmus, vstup a výstup. |
2 | 1.10.2019 | Proměnné a datové typy. Funkce. |
3 | 8.10.2019 | Řízení běhu programu. |
4 | 15.10.2019 | Problémy, algoritmy, data. Příklady: GCD NIM Tic Tac Toe |
5 | 22.10.2019 | Vyhledávání a řazení 1. Příklady: I-S S-S B-S |
6 | 29.10.2019 | Abstraktní datové typy (zásobník, fronta, spoj. seznam). Příklady: stack, queue, Linked list |
7 | 5.11.2019 | Vyhledávání a řazení 2. Příklady: M-S, Q-S, H-S |
8 | 12.11.2019 | Rekurze. Příklady: factorial, list reverse, hanoi, fibonacci |
9 | 19.11.2019 | Vyhledávání a řazení 3. Příklady: Cesty v grafu, Cesta z města |
10 | 26.11.2019 | Složitost a výkon algoritmů. Přehled složitosti algoritmů a datových struktur |
11 | 3.12.2019 | Přehled programovacích jazyků. Úvod do překládaných programovacích jazyků. |
12 | 10.12.2019 | - |
13 | 17.12.2019 | Programovací styly a kódovací konvence: čistý kód. clean-code.pdf |
24.12.2019 | Vánoce | |
31.12.2019 | Silvestr | |
14 | 7.1.2020 | - |
Poklady tvoří podpůrný materiál a jejich učelem není nahradit vlastní zápisky z přednášky, které slouží také jako prostředek osvojení si studované problematiky.
Hodnocení se řídí Studijním a zkušebním řádem ČVUT.
Předmět je zakončen zápočtem a zkouškou. K úspěšnému absolvování předmětu je nutné získat zápočet a vykonat zkoušku. Pro získání zápočtu je třeba úspěšně vyřešit domácí úkoly a získat alespoň 10 bodů.
Po získání zápočtu je nutné vykonat implementační zkoušku. Implementační zkouška probíhá v počítačové učebně na školních počítačích. Instalované prostředí odpovídá tomu, na které jste zvyklí ze semestru, s tím rozdílem, že nemáte přístup na internet ani ke svým personálním souborům (pracujete tedy v “čistém laboratorním prostředí”). Zkouškové zadání se skládá z šesti úloh, každé hodnocené až 10 body. Úlohy na sebe mohou navazovat. Není vyžadována speciální znalost specifických algoritmů, ale předpokládá se schopnost navrhnout jednoduchý algoritmus podle zadání a jeho bezchybná implementace. Čas na řešení úloh je dostatečný.
Body lze získat v kategoriích:
Kategorie | Body | Minimum bodů |
---|---|---|
10 domácích úkolů | 40 | 10 |
Zkouška (implementace) | 60 | - |
Rozložení hodnocení dle dosažených bodů je dle tabulky:
Známka | Bodové rozmezí | Slovní hodnocení |
---|---|---|
A | 90 a více | výborně |
B | 80 - 89 | velmi dobře |
C | 70 - 79 | dobře |
D | 60 - 69 | uspokojivě |
E | 50 - 59 | dostatečně |
F | méně než 50 | nedostatečně |