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 uveř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ě přes MS Teams nebo emailem | seredlad@fel.cvut.cz prosím používejte MS Teams | KN:E-429 | Cvičící Prezentace z cvičení |
Přednášky jsou streamovány na kanálu Posluchárny FEL ČVUT.
Stuktura přednášek a jejich pořadí se může lišit.
Materiály budou 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 2022/2023.
1 | 20.9.2022 | Úvod, proměnné a datové typy. , prezentace z minulé akreditace: Úvod, Proměnné a datové typy. Funkce., Řízení běhu programu. |
2 | 27.9.2022 | Problémy, algoritmy, data. , Příklady: GCD, NIM - kostra programu, NIM - implementace, Tic Tac Toe - kostra programu, Tic Tac Toe - implementace |
3 | 4.10.2022 | Vyhledávání a řazení 1. Příklady: I-S S-S B-S |
4 | 11.10.2022 | Abstraktní datové typy (zásobník, fronta), řazení pomocí haldy. Příklady: stack, queue, H-S |
5 | 18.10.2022 | Abstraktní datové typy (spoj. seznam). Příklady: Linked list |
6 | 25.10.2022 | Rekurze. Příklady: factorial, list reverse, hanoi, fibonacci |
7 | 1.11.2022 | Rekurzivní řazení. Příklady: M-S, Q-S |
8 | 8.11.2022 | Hledání v grafech (reprezentace grafu, rekurzivní hledání cest). Příklady: Cesty v grafu |
9 | 15.11.2022 | Hledání v grafech (prohledávání spojového grafu, stavový prostor). Příklady: Cesta z města |
10 | 22.11.2022 | Složitost a výkon algoritmů. Přehled složitosti algoritmů a datových struktur |
11 | 29.11.2022 | Přehled programovacích jazyků. Úvod do překládaných programovacích jazyků. |
12 | 6.12.2022 | Programovací styly a kódovací konvence: čistý kód. clean-code.pdf |
13 | 13.12.2022 | TBD |
20.12.2022 | Vánoce | |
27.12.2022 | Vánoce | |
3.1.2022 | Vánoce | |
14 | 10.1.2022 | Odpadá |
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 všechny 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ů |
---|---|---|
11 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ě |