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.