Anotace předmětu:
Navazující kurz programování v jazyce Python. Složitost algoritmu. Grafické uživatelské rozhraní v Pythonu. Dynamické datové struktury: seznam, fronta, zásobník, halda. Binární vyhledávací stromy. Základní grafové algoritmy. Operace s rastrovými daty. Vyhledávání: sekvenční, indexace, BST stromy, hashing.
Přednášky:
Seznam přednášek pro letní semestr. Možnost stažení prezentací ve formátu PDF.
Přednáška | Téma | Ke stažení |
1 | Časová složitost. | přednáška |
2 | DDS: Seznam, zásobník, fronta. | přednáška |
3 | Halda. Prioritní fronta. | přednáška |
4,5 | BST stromy. | přednáška |
6,7 | Grafické uživatelské rozhraní (QML, Widgets). | |
8,9 | Třídící algoritmy. | přednáška |
10,11 | Základní grafové algoritmy: BFS, DFS, Dijkstra. | přednáška |
12 | Operace s rastry. | |
(13,14) | Vyhledávácí algoritmy (index. klíče, BST, hashing). | přednáška |
Cvičení:
Praktická aplikace poznatků při tvorbě aplikací v prostředí PyCharm/Visual Studio Code.
Podmínky zápočtu:
- Zpracování úloh v zadaném termínu.
- Účast na cvičeních.
Literatura:
Přednášky:
[1] SEDGEWICK R.: Algoritmy v C, Addison-Wesley, 1999
[2] KOLÁŘ J.: Teoretická informatika,2004,Vydavatelství ČVUT
[3] VIRIUS M.: Základy algoritmizace,2004,Vydavatelství ČVUT
Cvičení:
[1] Berry P.: Head First Python 2e: A Brain-Friendly Guide, O′Reilly; 2nd ed. edition, 2016.
[2] Beazley B.: Python Cookbook: Recipes for Mastering Python 3, O'Reilly Media; 3rd edition, 2013.