====== Kombinované studium ====== Informace pro studenty kombinovaného studia předmětu Základy Algoritmizace Konzultace se konají každý druhý pátek (lichý výukový týden) v místnosti KN:E-127 v 11:00 - 12:30 {{:courses:b6b36zal:zal_dist.pdf|Organizace předmětu}} Prosíme, sledujte průběžně stránky s přednáškami a cvičeními denního studia. ====== Materiály ====== [[https://docs.python.org/3/tutorial/|Python tutoriál]] [[http://askpython.com/|Python 3 tutoriál]] [[https://www.learnpython.org/|Python interaktivní tutoriál]] Cormen, Leiserson, Rivest and Stein: Introduction to Algorithms (third edition). MIT Press and McGraw-Hill. 2009 [[http://ressources.unisciel.fr/algoprog/s00aaroot/aa00module1/res/%5BCormen-AL2011%5DIntroduction_To_Algorithms-A3.pdf|link]] ===== Konzultace 13. 10. 2017 ===== Úvodní konzultace je informační. Studovaná látka odpovídá půběhu denního studia. V předstihu před každou konzultací bude vždy zveřejněna probraná látka a úkoly. Průběh konzultace se bude věnovat problémům se zvládnutím dané látky. Studenti v kombinovaném studiu se připravují samostatně a na konzultace přicházejí žádně připraveni. Během semestru studenti odevzdají 10 úloh, které musí vypracovat samotatně. Za každou úlohu lze získat různý počet bodů. Studenti kombinovaného studia musí odevzdat všechny úlohy do termínu vyhlášeného na konzultacích. Poté se studentovi odečítají 2 body za každý další započatý týden. Student nemůže obdržet záporný počet bodů za úlohu. Úvod do programování v Pythonu [[https://cw.fel.cvut.cz/wiki/courses/pri-bootcamp/01|tutorial 1]] Úvodní přednáška {{:courses:b6b36zal:prednasky:zal01.pdf| }} [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/1.cviceni|První cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/2.cviceni|Druhé cvičení]] Co si procvičit: - deklarace funcke - práci s řetězci - práci se soubrory (textovými) Úlohy k vypracování: [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/1_introduction_assignment|První zadání - Upload system introduction]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/2_python_in_action|Druhé zadání - Python introduction]] Termín odevzdání úloh 1 a 2 je nastaven na 27.10.2017 (23:59 hodin). === Přehled úloh === Aktuální přehled viz. [[courses:b6b36zal:cviceni|]] ===== Konzultace 27. 10. 2017 ==== Úvod do programování v Pythonu [[https://cw.fel.cvut.cz/wiki/courses/pri-bootcamp/02|tutorial 2]] Úvod do programování v Pythonu [[https://cw.fel.cvut.cz/wiki/courses/pri-bootcamp/03|tutorial 3]] Druhá přednáška {{:courses:b6b36zal:prednasky:zal02.pdf| }} Třetí přednáška {{:courses:b6b36zal:prednasky:zal03.pdf| }} Čtvrtá přednáška {{:courses:b6b36zal:prednasky:zal04.pdf| }} Příklady: {{:courses:b6b36zal:prednasky:gcd.py|GCD}} {{:courses:b6b36zal:prednasky:nim.py|NIM}} {{:courses:b6b36zal:prednasky:tictactoe.py| Tic Tac Toe}} [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/3.cviceni|Třetí cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/4.cviceni|Čtvrté cvičení]] Co si procvičit: - práci s numerickými proměnnými - podmínky - cykly (while,for) - vyjímky (exceptions) Úlohy k vypracování: [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/3_calculator|Třetí zadání - Calculator]] (Poznámka: Odmocninu řešit přes modul math) [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/4_pi|Čtvrté zadání - Pi]] Termín odevzdání úloh 3 a 4 je nastaven na 10.11.2017 (23:59 hodin). ===== Konzultace 10. 11. 2017 ===== Pátá přednáška {{:courses:b6b36zal:prednasky:zal05.pdf| }} Příklady: {{:courses:b6b36zal:prednasky:insertion_sort.py|I-S}} {{:courses:b6b36zal:prednasky:selection_sort.py|S-S}} {{:courses:b6b36zal:prednasky:bubble_sort.py|B-S}} Šestá přednáška {{:courses:b6b36zal:prednasky:zal06.pdf| }} Příklady: {{:courses:b6b36zal:prednasky:stack.py|stack}}, {{:courses:b6b36zal:prednasky:queue.py|queue}}, {{:courses:b6b36zal:prednasky:linkedlist.py|Linked list}} [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/5.cviceni|Páté cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/6.cviceni|Šesté cvičení]] Co si procvičit: - práce s poli (list) - třídící algoritmy [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/5_polynoms|Páté zadání - Polynomials]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/6_data_sorting|Šesté zadání - Data sorting]] Termín odevzdání úloh 5 a 6 je nastaven na 24.11.2017 (23:59 hodin). ===== Konzultace 24. 11. 2017 ===== Sedmá přednáška {{:courses:b6b36zal:prednasky:zal07.pdf| }} Příklady: {{:courses:b6b36zal:prednasky:merge_sort.py|M-S}}, {{:courses:b6b36zal:prednasky:quick_sort.py|Q-S}}, {{:courses:b6b36zal:prednasky:heap_sort.py|H-S}} Osmá přednáška {{:courses:b6b36zal:prednasky:zal08.pdf| }} Příklady: {{:courses:b6b36zal:prednasky:factorial.py|factorial}}, {{:courses:b6b36zal:prednasky:list_reverse.py|list reverse}}, {{:courses:b6b36zal:prednasky:hanoi.py|hanoi}}, {{:courses:b6b36zal:prednasky:fibonacci.py|fibonacci}} [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/7.cviceni|Sedmé cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/8.cviceni|Osmé cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/7_showroom|Sedmé zadání - Simple car database]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/8_bst|Osmé zadání - Binary Search Tree]] Termín odevzdání úloh 7 a 8 je nastaven na 8.12.2017 (23:59 hodin). ===== Konzultace 8. 12. 2017 ===== Devátá přednáška {{:courses:b6b36zal:prednasky:zal09.pdf| }} Příklady: {{:courses:b6b36zal:prednasky:graphpaths.py|Cesty v grafu}}, {{:courses:b6b36zal:prednasky:citypaths.py|Cesta z města}} Desátá přednáška {{:courses:b6b36zal:prednasky:zal10.pdf| }} [[http://bigocheatsheet.com/| Přehled složitosti algoritmů a datových struktur]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/9.cviceni|Deváté cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/10.cviceni|Desáté cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/9_permutations|Deváté zadání - Permutations]] Termín odevzdání 9. úlohy je nastaven na 22.12.2017 (23:59 hodin). ===== Konzultace 22. 12. 2017 (Odpadá) ===== Jedenáctá přednáška {{:courses:b6b36zal:prednasky:zal11.pdf| }} [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/cviceni/11.cviceni|Jedenácté cvičení]] [[https://cw.fel.cvut.cz/wiki/courses/b6b36zal/zadani/10_dijkstra|Desáté zadání - Dijkstra]] Termín odevzdání 10. úlohy je nastaven na 5.1.2018 (23:59 hodin). ===== Konzultace 5. 1. 2018 ===== Poslední konzultace v semestru. Všichni, kdo splní podmínky zápočtu (úspěšné odevzdání všech úloh, zisk minimálně 10ti bodů), obdrží zápočet. ====== Odkazy ====== [[https://cw.felk.cvut.cz/forum/forum-1429.html|diskusní fórum]] [[https://cw.felk.cvut.cz/forum/forum-1428.html|diskusní fórum (denní studium)]] [[http://cw.felk.cvut.cz/upload/|UploadSystem]] [[http://www.fel.cvut.cz/cz/education/rozvrhy-ng.B171/public/html/predmety/44/88/p4488206.html|rozvrh konzultací]] [[http://www.fel.cvut.cz/cz/education/rozvrhy-ng.B171/public/html/predmety/31/28/p3128906.html|rozvrh (denní studium)]]