Table of Contents

Rozvrh na FEL Posluchači ALG Odevzdávací systém BRUTE Diskusní fórum

ALG - cvičení

Provoz v semestru

Podmínky zápočtu
Kromě minima 12 z možných 24 bodů za řešení úloh je ke získání zápočtu nezbytná pravidelná docházka do cvičení s max. 2 neomluvenými absencemi. Předpokládáme, že posluchači se vyvarují odevzdávání plagiátů a seznámí se s pravidly uvedenými na společné stránce: Plagiáty.

Programovací úlohy
Semestr obsahuje 8 domácích programovacích úloh sumárně ohodnocených 24 body, z čehož je k získání zápočtu nutno získat alespoň 12 bodů. Úlohy jsou zadávány a řešení vyhodnocována prostřednictvím odevzdávacího systému BRUTE.

Termíny a hodnocení domácích úloh

    zadání -- odevzdání         
1.   29.9. -- 22.10.   ( Asymptotic complexity )       
2.  13.10. -- 12.11.   ( Recursion/Backtrack )       
3.  20.10. -- 19.11.   ( Tree search )  
4.  27.10. -- 26.11.   ( Graph search )       
5.   3.11. -- 10.12.   ( BST processing )
6.  10.11. -- 17.12.   ( AVL processing )
7.   1.12. -- 31.12.   ( Dynamic Programming )
8.   8.12. -- 14.1.    ( Dynamic Programming )
         
Správně spočtených 10 z 10 testovacích případů     ... 3 body
Správně spočtených 9 z 10 testovacích případů      ... 2 body
Správně spočtených 8 z 10 testovacích případů      ... 1 bod
Správně spočtených 7 nebo méně testovacích případů ... 0 bodů

Pozdní odevzdání ... -1 bod za každý započatý týden zpoždění.

V BRUTE u úloh vidíte počet správně vyřešených zadání 
(minus penalizaci za pozdní odevzdání), 
ale ne finální počet bodů podle výše uvedeného přepočtu. 
Finální počet bodů za úlohu spočítáme až u zkoušky, 
a je roven max(0, body v BRUTE - 7).

Upload systém
Komunikace s upload systémem je popsána v oddílu Upload System.
Každou úlohu doprovází sada neveřejných testovacích souborů a sada veřejných souborů se správnými výsledky. Veřejné soubory jsou uloženy v odevzdávacím systému a systém spouští řešitelovu úlohu pokaždé rovněž na těchto datech a vrací řešiteli kompletní výstup jeho řešení na STDOUT a STDERR pro každý veřejný soubor. Veřejné soubory jsou součástí zadání úlohy a jejich obsah je podobný obsahu testovacích souborů a poskytuje tak další příležitost k účinnému ladění. Počet testovacích a veřejných souborů není pevně určen a pro různé úlohy se může lišit. Zejména veřejné soubory mohou z trénovacích důvodů zcela chybět.

Materiály na cvičení

Tabulka s porovnáním složitostí – pdf
FEL YouTube playlist ALGoritmizace s postprocesovanými záznamy ze cvičení ZS 2021/22.

Úlohy k procvičování a zkoušce

Řád růstu funkcí a asymptotická složitost
Bez řešení a_complex_alg_unsol.pdf a s řešením a_complex_alg.pdf
Rekurze
Bez řešení b_recur_alg_unsol.pdf a s řešením b_recur_alg.pdf
Stromy, průchod stromy
Bez řešení c_treestq_alg_unsol.pdf a s řešením c_treestq_alg.pdf
Vyhledávací stromy
Bez řešení d_bst_avl_b_alg_unsol.pdf a s řešením d_bst_avl_b_alg.pdf
Řazení
Bez řešení e_sort_alg_unsol.pdf a s řešením e_sort_alg.pdf
Hash (rozptylovací tabulky)
Bez řešení f_hash_alg_unsol.pdf a s řešením f_hash_alg.pdf
Dynamické programování
Bez řešení g_dynpgm_alg_unsol.pdf a s řešením g_dynpgm_alg.pdf