[[https://intranet.fel.cvut.cz/cz/education/rozvrhy-ng.B241/public/html/predmety/46/84/p4684006.html|Rozvrh na FEL]]
[[https://intranet.fel.cvut.cz/cz/education/rozvrhy-ng.B241/public/html/paralelky/P46/84/par4684006.1.html|Posluchači PAL]]
[[https://cw.felk.cvut.cz/brute/|Odevzdávací systém BRUTE]]
[[https://cw.felk.cvut.cz/forum/forum-1900.html|Diskusní fórum]]
====== Odkazy / literatura ======
====== Literatura papírová ======
[**MV**] Martin Mareš, Tomáš Valla: Průvodce labyrintem algoritmů, CZ.NIC, 2017, [[https://knihy.nic.cz/|link]].\\
''Nejobsažnější a nejpropracovanější česká kniha v oboru, obsahuje algoritmy základní i pokročilé, přehledný výklad, autoři léta učí algoritmy na MFF UK a FIT ČVUT. ''\\
[**AC**] Robert Sedgewick: Algoritmy v C, části 1-4, SoftPress, Praha, 2003 [[http://www.informit.com/store/algorithms-in-c-parts-1-4-fundamentals-data-structures-9780201314526|link]]\\
''Překlad světoznámé učebnice obsahuje detailní poučení o řazení a vyhledávání, výborná kniha pro
úvod do hlubšího pohledu na problematiku, 688 stran, původní cena cca 700 Kč, nyní rozebrána, knihovna FEL má asi 10 výtisku, jiné knihovny méně, ale mají. V originálu existuje ve variantě pro C++ a Javu. ''\\
[**ACG**] Robert Sedgewick: Algorithms in C Part 5: Graph Algorithms (3rd Edition), Addison-Wesley Professional, 2002 [[http://www.informit.com/store/algorithms-in-c-part-5-graph-algorithms-9780201316636|link]]\\
''Pokračování [AC](viz niže). Český překlad bohužel dosud neexistuje. Grafove reprezentace, prohledavani grafu, nejkratší cesty, minimální kostry, toky v síti, orientované grafy. Teoretické části lze nalézt přístupně zpracované i jinde (např.
[GJA]), tato kniha však, stejně jako [AC], akcentuje také důležité implementační otázky. 528 stran.'' \\
V originálu existují obě knihy prof Sedgewicka ve variantě pro C++ a Javu. \\
[**APT**] Pavel Töpfer: Algoritmy a programovací techniky, Prometheus Praha 1995, 2. vydání 2007, [[http://neoluxor.cz/ucebnice/algoritmy-a-programovaci-techniky--35715/| link]] \\
''Oblíbená učebnice programování, představuje nejdůležitější datové struktury a jejich použití,
základní algoritmy řazení, vyhledávání a manipulace s grafy. Patrně nejlepší česká publikace
v tomto oboru, kompaktní, cenově dostupná, pokud je vyprodána, bývá k dispozici v knihovnách. '' \\
[**CLRS**] T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein: Introduction to Algorithms, 3rd ed., MIT Press, 2009, [[http://en.wikipedia.org/wiki/Introduction_to_Algorithms| link]] \\
''Jedna ze standardních světových učebnic oboru, obsažná (1200+ stran) a důkladná. Zajemci o vědeckotechnické programování poslouží zároveň jako výborná referenční příručka. ''\\
[**GJA**] J. Demel: Grafy a jejich aplikace, Praha, Academia 2002 \\
[**HMU**] J. E. Hopcroft, R. Motwani, J. D. Ullman: Introduction to Automata Theory, Languages, and Computation, 2nd ed., Addison-Wesley, 2001 \\
''Fotokopie nižší kvality. [[http://kmahmoudi.ir/DATA/Introduction%20To%20Automata%20Theory%20Languages%20,%20and%20Computation%20-%20John%20Hopcroft.pdf|zde.]]'' \\
[**JP**] B. Melichar: Jazyky a překlady, Praha, ČVUT 1996 \\
[**JPc**] B. Melichar et al.: Jazyky a překlady Cvičení, Praha, ČVUT 2004 \\
====== Literatura online ======
**Algortitmy, grafy, teoretická informatika** \\
[**MV-PDF**] Martin Mareš, Tomáš Valla: Průvodce labyrintem algoritmů, CZ.NIC, 2017, [[ http://pruvodce.ucw.cz/|link]].\\
''Kompletní elektronická verze [**MV**]''\\
[**DPV**] S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani: Algorithms, Mcgraw-Hill Higher Education, 2006, [[http://www.amazon.de/Algorithms-Sanjoy-Dasgupta/dp/0073523402/ref=sr_1_1?ie=UTF8&qid=1345655823&sr=8-1|link]] \\
''Vynikající učebnice s množstvím skvělých cvičení, velmi čitelná, nezatížená "akademickým teoretizováním". Ve formátu pdf: [[http://beust.com/algorithms.pdf | zde. ]]''\\
[**PG**] I.Parberry, W.Gasarch: [[http://larc.unt.edu/ian/books/free/poa.pdf| Problems on Algorithms]] Prentice- Hall 1998''\\ Několik stovek instruktivních úloh z určování složitosti, rekurze, DP, vyhledávání a stromů.''\\
[**TIN**] J. Kolář: Teoretická informatika, skripta, ČVUT, 2004
[[http://www.exfort.org/2005l/4/x36tin/pdf/ti.pdf|Skripta TIN]] \\
[**ZGA**] J. Černý:[[http://kam.mff.cuni.cz/~kuba/ka/| Základní grafové algoritmy]], KAM MFF, 2010, online publikace.\\
''Kniha obsahuje také základní poučení o algoritmech vůbec, složitost, rozděl/panuj. Spolu s [**APT**] představuje výborný úvod do problematiky v češtině, v přítažlivosti a názornosti výkladu je mnohde daleko předbíhá. Množství zajímavých příkladů. Doporučujeme.'' \\
**Formální jazyky a automaty** \\
[**MD**] M Demlová: Jazyky, automaty a gramatiky [[http://math.feld.cvut.cz/demlova/teaching/jag_vyuka.html| učební text FEL ČVUT pro předmět A4M01JAG ]] \\
[**TJAI**] Š. Vavrečková: Teorie jazyků a automatů I, Slezská univerzita v Opavě, 2007 [[http://fpf.slu.cz/~vav10ui/formal.html|Skripta pro TJA I]] \\
[**ZST**] P. Jančar: Teoretická informatika ,VŠB-TU, Ostrava, 2007, v odstavci:
[[http://www.cs.vsb.cz/jancar/TEORET-INF/teoret-inf.htm| Základní studijní text]] \\
[**TKA**] H. Dostál: Teorie konečných automatů, regulárních gramatik, regulárních výrazů a jazyků, Fakulta informatiky a managementu UHK, [[http://iris.uhk.cz/tein/index.html|Strukturovaná stránka]] \\
[**BGJ**] K. Stratílková: Bezkontextové gramatiky, jazyky a zásobníkové automaty, Fakulta informatiky a managementu UHK, [[http://automata.howto.cz/index.html|Strukturovaná sránka]] \\
[**AFJ**] I. Černá, M. Křetínský, A. Kučera: Automaty a formální jazyky I, Fakulta informatiky MU, 2002, [[http://is.muni.cz/elportal/?id=703389| Elektronický text]] \\
[**FJA**] B. Rovan, M. Forišek: Formálne Jazyky a Automaty, FMFI UK, Bratislava, 2009, [[http://foja.dcs.fmph.uniba.sk/materialy/skripta.pdf| Elektronické skriptá]] pre tých, ktorí preferujú štúdium v rodnej reči.\\
**Hledání v textu** \\
[**TSA**] B. Melichar et al.: Text Search Algorithms, FEE CTU, Prague, 2004[[http://www.stringology.org/athens/TextSearchingAlgorithms/|link]] \\
[**TIS**] B. Melichar et al.: Textové informační systémy, FEL ČVUT, Praha, 1997\\
====== Praktické programování ======
* Programátorské kuchařky z MFF UK[[http://ksp.mff.cuni.cz/study/cooks/cookbook.html| kuchařky.]] \\
* Korespondenční semináře z programování (KSP), [[http://ksp.mff.cuni.cz/ |MFF UK Praha]], [[http://www.ksp.sk/ksp2.0/news/|MFF UK Bratislava]], [[http://ganymed.math.muni.cz/ks/|MU Brno]]. \\
* Úlohy ze [[http://mo.mff.cuni.cz/p/|středoškolských programovacích olympiád ]]. \\
* Steven S. Skiena, Miguel A. Revilla: [[http://acm.cs.buap.mx/downloads/Programming_Challenges.pdf]] -- vyborný úvod a komentář k vybraným úlohám z UVA Online Judge\\
* Vyhodnocovací systém na University of Valladolid: [[http://uva.onlinejudge.org/| UVA Online Judge]] \\ Pomůcka: UVA Toolkit [[http://uvatoolkit.com/problemssolve.php|Tématické členění vybraných úloh z UVA ]]\\
* Soutěžní stránky ACM na FEL: [[http://contest.felk.cvut.cz/|ACM International Collegiate Programming Contest]] \\
* [[http://projecteuler.net/problems| Project Euler]]\\
* [[http://www.spoj.pl/problems/classical/|Sphere Online Judge]]\\
====== Různé tématické přehledy a pomůcky ======
**Animace -- Mnoho datových struktur** \\
* [[https://www.cs.usfca.edu/~galles/visualization/Algorithms.html| Snadná vizualizace ]]
* [[https://people.ok.ubc.ca/ylucet/DS/SkipList.html|skip list]]
* [[https://yongdanielliang.github.io/animation/web/24Tree.html|2-3-4 tree]]
* [[https://math.stackexchange.com/questions/393416/are-these-2-graphs-isomorphic/393520|Isomorfizmus animovaný Mathematic-ou ]]
**B+ stromy** \\
http://www.cs.princeton.edu/courses/archive/fall08/cos597A/Notes/BplusInsertDelete.pdf\\
http://www.cs.helsinki.fi/u/mluukkai/tirak2010/B-tree.pdf\\
**Binary search** \\
Skoro nikdo ho nenapíše správně: [[http://reprog.wordpress.com/2010/04/19/are-you-one-of-the-10-percent/|External Link]]\\
Ani velcí vývojaři: [[http://googleresearch.blogspot.cz/2006/06/extra-extra-read-all-about-it-nearly.html|External Link]]\\
** Leonardo Pisano: **\\
http://www.gdeepak.com/IADSA/L22binomialfibonacciheaps.pdf\\
http://www.cl.cam.ac.uk/teaching/1213/AlgorithII/fibonacci.pdf\\
**Ukázka sjednocení a průniku automatů** \\
[[http://www.cs.vsb.cz/kot/soubory_animaci/a-dfa_sjednoceni.pdf|Sjednoceni]]
[[http://www.cs.vsb.cz/kot/soubory_animaci/a-dfa_prunik.pdf|Prunik]]
**Pugh: Skip list** \\
http://cglab.ca/~morin/teaching/5408/refs/p90b.pdf
**k-d stromy** \\
http://www.cs.umd.edu/users/meesh/420/Notes/MountNotes/lecture17-quadkd.pdf\\
http://www.cs.umd.edu/users/meesh/420/Notes/MountNotes/lecture18-kd2.pdf\\
http://www.cs.umd.edu/~mount/420/Lects/420lects.pdf\\
http://www.cs.cmu.edu/~awm/animations/kdtree/ \\
**Trie et al** \\
http://people.cis.ksu.edu/~rhowell/viewer/viewer.html \\
www.cs.umd.edu/class/fall2005/cmsc132/lecs/lec29.ppt \\
www.math.tau.ac.il/~haimk/seminar02/suffixtrees.ppt\\
www.cs.nyu.edu/~melamed/courses/102/lectures/Tries.ppt\\
**Extras** \\
http://www.fel.cvut.cz/cz/rozvoj/podminky-prijeti-MP.html
**Memory Management** \\
* CERT Coordination Center of Carnegie Mellon University on {{:courses:a4m33pal:04_dynamic_memory_v6.pdf| dynamic memory allocation }}.\\
* Doug Lea on his original Cpp [[http://g.oswego.edu/dl/html/malloc.html|Memory allocator ]].\\
* http://en.wikipedia.org/wiki/Mark-compact_algorithm
* http://en.wikipedia.org/wiki/Cheney%27s_algorithm
* http://en.wikipedia.org/wiki/Garbage_collection_%28computer_science%29
==== SageMath displays a graph ====
https://math.stackexchange.com/questions/393416/are-these-2-graphs-isomorphic/393520
find it in
Go to https://sagecell.sagemath.org/ and input:
from sage.graphs.graph_input import from_graph6
g = Graph()
from_graph6(g, 'FGM]_') # graph6 format!
g.show() # long time
Search [[http://graphs.felk.cvut.cz|http://graphs.felk.cvut.cz]] specify: \\
Order 7
Size 9
Max Degree 3
Hamiltonian Yes
Centers 3