Předmět Algoritmy a datové struktury pro učitele se zaměřuje na jednu ze zásadních složek vzdělání učitele IKT, a to na prvky algoritmizace a programování v rámci informatického myšlení a digitální gramotnosti. Návazně je možné pokračovat programováním v konkrétních programovacích jazycích a využívat a aplikovat získané poznatky.
Cílem předmětu je seznámit studenty s principy, typologií a implementací algoritmických a datových struktur včetně ukázek a cvičení s algoritmickým a datovými strukturami. Do témat předmětu patří následující stěžejní témata: Paradigmata programování, procedurální a objektový přístup; Program, algoritmus a data; Data a datové struktury, datové typy implementované a abstraktní; Algoritmus a jeho vlastnosti, dělení, typologie, formy znázornění; Základní algoritmické konstrukce; Prostředky pro zápis algoritmu a programu, diagramy, SW prostředí; Datové struktury lineární (pole, asociativní pole, fronta, zásobník, seznamy, implementace struktur, datové struktury a operační systémy); Datové struktury nelineární; Implementace datových typů (zásobník, fronta, seznamy, grafy, strom) a ukázky; Příklady vybraných základních algoritmů; Základní obecné typy algoritmů; Aplikace do edukace.
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (12.12.2022)
The course Algorithms and Data Structures for Teachers focuses on one of the key components of ICT teacher education, namely the elements of algorithmization and programming, computer thinking and digital literacy. Subsequently, it is possible to continue programming in specific programming languages and use and apply the acquired knowledge. The aim of the course is to acquaint students with the principles, typology and implementation of algorithmic and data structures, including examples and exercises with algorithmic and data structures. The topics of the course include the following key topics: Paradigms of programming, procedural and object-oriented approach; Program, algorithm and data; Data and data structures, implemented and abstract data types; Algorithm and its properties, division, typology, forms of representation; Basic algorithmic constructions; Means for writing algorithm and program, diagrams, SW environment; Linear data structures (arrays, associative arrays, queues, stacks, lists, structure implementations, data structures and operating systems); Non-linear data structures; Implementation of data types (stack, queue, lists, graphs, tree) and samples; Examples of selected basic algorithms; Basic general types of algorithms; Application to education.
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (01.09.2021)
Deskriptory
Pro podporu studia je využit LMS Moodle. Obsahuje kromě výukových a dalších materiálů také konkrétní informace k online komunikaci, pro kterou bude použito prostředí Google Meet. Název kurzu: Algoritmy a datové struktury pro učitele URL kurzu:https://moodle.it.pedf.cuni.cz/course/view.php?id=1846 Klíč k zápisu: je před první lekcí zaslán e-mailem všem zapsaným účastníkům kurzu dle SISu, včetně dalších informací ke kurzu. V případě distanční výuky bude kurz probíhat heterogenní formou v rozvrhované době dle SIS.
Příprava na výuku
Doba očekávané přípravy na 1 hodinu přednášky
60 minut
Doba očekávané přípravy na 1 cvičení
80 minut
Samostudium literatury (za semestr)
5 hodin
Práce se studijními materiály (za semestr)
10 hodin
Plnění průběžných úkolů (za semestr)
24 hodin
Plnění předmětu
Příprava na zkoušku a zkouška
12 hodin
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (20.09.2024)
Podmínky zakončení předmětu
Viz Požadavky ke zkoušce.
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (01.09.2021)
Literatura
Studijní literatura:
ARLOW, J., NEUSTADT, I. UML a unifikovaný proces vývoje aplikací: průvodce analýzou a návrhem objektově orientovaného softwaru. Brno: Computer Press, 2003.
HYLMAR R. Programování pro úplné začátečníky. Brno: Computer Press, 2012.
KNUTH, D. E. The Art of Computer Programming. Volumes 1-4. Addison-Wesley Professional, 2011.
KNUTH, D. E. Umění programování – základní algoritmy. Brno: Computer Press, 2008.
NOVÁK, J. Elementární algoritmické konstrukce a jejich vyjadřování. Didaktické studie. Praha: PedF UK, 2017, 9(2).
MERUNKA, V. Datové modelování: průvodce analýzou a návrhem objektově orientovaného softwaru. Praha: Alfa Publishing, 2006.
PŠENČÍKOVÁ, J. Algoritmizace: praktická učebnice. Kraslice na Hané: Computer Media, 2007.
RYANT, I. Algoritmy a datové struktury objektově. Praha: Ivan Ryant, 2017.
TAUFER, I. Algoritmy a algoritmizace – vývojové diagramy. Pardubice: Univerzita Pardubice, 2009.
TÖPFER, P. Algoritmy a programovací techniky. Praha: Prometheus, 2010.
VALLA, T. Průvodce labyrintem algoritmů. Praha: CZ.NIC, 2017.
VANÍČEK, J. Teoretické základy informatiky. Praha: Kernberg, 2007.
VANÍČEK, J., MIKEŠ, R. Informatika pro základní školy a víceletá gymnázia, 3. díl. Brno: Computer Press, 2006.
VEČERKA, A. Grafy a grafové algoritmy. [online]. Olomouc: Katedra informatiky PřF UPOL, 2007. Dostupné z: https://phoenix.inf.upol.cz/esf/ucebni/Grafy_a_grafove_algoritmy.pdf
WRÓBLEWSKI, P. Algoritmy. Brno: Computer Press, 2015.
WRÓBLEWSKI, P. Algoritmy. Datové struktury a programovací techniky. Brno: Computer Press, 2004.
WIRTH, N. Algoritmy a štruktúry údajov. Bratislava: Alfa, 1988.
Internetové zdroje jsou uváděny v průběhu výuky a v moodle.
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (12.12.2022)
Požadavky ke zkoušce
Podmínky pro připuštění ke zkoušce:
Aktivní práce v prezenční části výuky.
Úspěšné splnění všech úloh zadaných ke zpracování v průběhu semestru, odevzdání nejpozději tři dny před termínem zkoušky, na který je student přihlášen.
Zpracování semestrální práce - vybraného tématu z tematiky předmětu (upřesnění ve výuce). Odevzdání práce nejpozději tři dny před termínem zkoušky.
Zkoušku nelze absolvovat, jestliže výše uvedené práce budou odevzdány po termínu nebo budou zpracovány v nevyhovující kvalitě (hodnocení stupněm 4).
Zkouška sestává z ověření teoretických znalostí témat předmětu a schopnosti aplikace poznatků. Obsahuje písemný test a při úspěšném zvládnutí testu probíhá dále ústní formou.
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (01.09.2021)
Sylabus
Témata:
Paradigmata programování, procedurální a objektový přístup;
Program, algoritmus a data;
Data a datové struktury, datové typy implementované a abstraktní;
Algoritmus a jeho vlastnosti, dělení, typologie, formy znázornění;
Základní algoritmické konstrukce;
Prostředky pro zápis algoritmu a programu, diagramy, SW prostředí;
Datové struktury lineární (pole, asociativní pole, fronta, zásobník, seznamy,
implementace struktur, datové struktury a operační systémy);
Datové struktury nelineární;
Implementace datových typů (zásobník, fronta, seznamy, grafy, strom) a ukázky;
Příklady vybraných základních algoritmů;
Základní obecné typy algoritmů;
Příklady programovacích jazyků (blokové - Scratch, znakové - Python, Pascal)
Aplikace do edukace.
Poslední úprava: Novák Jaroslav, Ing., Ph.D. (12.12.2022)
Výsledky učení
Student:
vysvětlí pojem algoritmus a jeho vlastnosti, dělení, typologie, formy znázornění
vysvětlí specifika programu, dat a jejich souvislosti
aplikuje základní algoritmické konstrukce různými způsoby
používá dekvátně prostředky pro zápis algoritmu a programu
popíše vlastnosti programovacích jazyků a navrhne způsoby jejich užití
vysvětlí paradigma procedurální a objektové a použije vhodně v modelových situacích
vysvětlí principy a typologii datových struktur, datových typů, operace s nimi a adekvátní operátory
aplikuve vhodné datové typy imoplementované a abstraktní v modelových příkladech
aplikuje systémový přístup k tvorbě algoritmů a programů
navrhne jednoduché programy v programovacím jazyce nebo vizuálními prostředky a ověří jejich funkčnost