Zápočtový program - speficikace a vypracování - Ynformace, token a odkaz na oul Alg a Prg Teoreticke cviceni je spojeno s praktickym: co jsme teoreticky probrali to jsme implementovali 1. Opakovani predavani parametru funkci: hodnotou a odkazem; jake promene se pradavaji odkazem a jake hodnotou? (mutable vs immutable) PRISTE 3. Rekurze: úvod do teorie a priklady: dle BTS_Naive_priklady_1_4.py T -> n-arni T -> BT -> BST; BT jako datova struktura a jeji rekurzivni definice DFS pre in post # https://www.enjoyalgorithms.com/blog/binary-tree-traversals-preorder-inorder-postorder 5. Rekurzivni DFS pres meta algoritmus prochazeni stromu na nerekurzivni prochazeni stromu - obecne 5.2 Stack: def, implementace (arr, linkedList); priklady; LIFO 5.6 Fronta: def, implementace (arr, linkedList); priklady; FIFO 5.8 Date Structure v meta algoritmu: a] stack; b] fronta a jejich simulace na konkretnim strome - FIFO a LIFO resp. Fronta a Stack jako princip usporadani 7. DFS pro BT: rekurze a stack 9. BFS pro BT: fronta 10. AIMA: Russel, Norvig: 3. Solving Problems by Searching; DFS a BFD https://aima.cs.berkeley.edu/ 11. Porovnani DFS a BFS 11.1 Slozitost na cas a prostor Urcete prostorovou slozitost DFS a BFS v zavislosti na houbce (BT) stromu 13. Implementace BFS frontou a DFS stack a rekurze 13.2 Implementace Stacku a Fronty v Pythonu napr.: a] collections b] list: popleft(), pop() a pop(-1), append(),... https://www.geeksforgeeks.org/deque-in-python/