Algoritmy a datové struktury II, středa 9:00 místnost S11

Karel Král a Veronika Slívová

Kontakt

kralka (AT) iuuk (atd.) Stránky Karla Krále

slivova (AT) iuuk (atd.) Stránky Veroniky Slívové

Rozcestník:

Zápis cvičení dění na cvičení a zadání domácích úkolů.

Body za domácí úkoly a reporty chyb.

Podmínky získání zápočtu.

Užitečné odkazy.

Zápis cvičení

Speciální Vánoční série! (Inkrementovány body některých úloh.) Pro čokoládu odevzdejte do nedělní půlnoci, ať stihneme opravit a na cvičení přinést čokoládu.

Zde budou postupně přibývat domácí úkoly a příklady probírané na cvičení.

11. 1. (hlavně Verča a trochu Karel)

Opakování na zkoušku dle: pdf.

4. 1. (Verča a Karel)

Příklady z pdf a domácí úkoly.

Příště budeme opakovat celý semestr. Odhlasováno bylo:

21. 12. (Verča a Karel)

Příklady z pdf a domácí úkoly.

14. 12. (Verča)

Verča povídala o NP. Příklady 1-5 z pdf

7. 12. (Karel a Verča)

Příklady 1, 2, 3, 5, 6, 7, 8 z pdf se zadáním a domácím úkolem. Obvody, komparátory, konvexní obal.

30. 11. (Verča)

Příklady 1-4 z pdf se zadáním a domácími úkoly. Ještě příklad na dynamické programování. Obvody a formule.

23. 11. (Karel)

Příklady z pdf se zadáním a domácími úkoly. Poslední procházení FFT. Dynamické programování, základní myšlenky. Implementace v Pythonu (a reklama na Haskell). Příklady 1, 2, 3 (znalost ze základního kurzu programování), 4. Příklad 6 byl jen zadán. Pokud někdo vyřeší a sepíše příklad šest, dáme za něj body (tj. je to bonusový domácí úkol).

16. 11. (Karel společně s Verčou)

Příklady z pdf se zadáním a domácími úkoly. DFT na polynomech. Počítání FFT na polynomech a rychlé násobení. Kód FFT, diskuse o knihovnách a rychlosti.

9. 11. (Karel společně s Verčou)

Příklady z pdf se zadáním a domácími úkoly. DFT a algoritmus FFT. Příště budeme pokračovat. Pravděpodobně budeme napřed před přednáškou. Pokud jste cokoliv nepochopili nebo chcete zopakovat, tak neváhejte napsat (s předstihem) a můžeme to na cvičení zopakovat.

2. 11. (Karel společně s Verčou)

Příklady z pdf se zadáním a domácími úkoly. Pozor, část domácích úkolů má deadline jen jeden týden! Opakování komplexních čísel, ještě pár tokových úloh, opakování určování asymptotické složitosti algoritmů.

26. 10. (Karel společně s Verčou)

Opakování algoritmů na hledání toků, aplikace na jiné problémy. Nestihli jsme poslední příklad. První příklad první série můžete odevzdávat až do příštího týdne za plný počet bodů. pdf se zadáním a domácími úkoly.

Zadána třetí sada domácích úkolů. Do 9. listopadu za plný počet bodů!

Prodloužili jsme deadline prvního domácího úkolu z první série do příštího týdne (do 2. 11. za plný počet bodů). Zadali jsme ho totiž nejednoznačně. Chceme analýzu situace, kdy dostaneme na vstupu číslo N a následně dostáváme posloupnost přičtení a odečtení jedničky (například: 68 +1 +1 +1 -1 +1 +1 -1 -1 -1). Nechceme ani řešení, kde se sečtou +- jedničky a až potom se přičtou k zadanému N. Chceme opravdu reprezentovat každý mezivýsledek.

19. 10. (Verča)

Rabin Karp, kostry a napravení reputace řezového lemmatu. Spousta koster a začátek toků -- Ford Fulkerson. Mimo příkladů 6, 7, pdf se zadáním a domácími úkoly.

Pro zájemce: Analýza union find (inverzní Ackermanova funkce).

Příklad, kde Ford Fulkerson nemusí ani konvergovat (při špatném výběru zlepšujících cest).

Zadána druhá sada domácích úkolů. Do 2. listopadu za plný počet bodů!

12. 10. (Verča)

KMP dokončení a opakování Aho-Corasick. Příklady 1-6, příklad 7 naivní řešení, opravdové řešení rozmyslete doma. pdf se zadáním a domácími úkoly.

Zadána první sada domácích úkolů. Do 26. října za plný počet bodů! Prodloužen deadline pro první příklad z této série domácích úkolů, za plný počet bodů až do 2. 11.

5. 10. (Karel a Verča)

KMP, lemma zajišťující jeho funkčnost (to se suffixy). Příklady z pdf.

Výsledky domácích úkolů a písemek.

Výsledky zveřejňuji jen pod přezdívkou. Pokud ji nemám, nezveřejňuji.

Podmínky zápočtu

Získání alespoň 100 bodů za domácí úkoly. Budou vypsány domácí úkoly za aspoň 150 bodů.

Užitečné odkazy

Stránka přednášky prof. Kučery

Videa přednášek z MFF. Přihlašujte se loginem (jménem) do sisu. Obsahuje také (neúplnou) přednášku ADSII (jiný link) od Martina Mareše.

Algovize a kniha prof. Kučery.

Skripta Martina Mareše.

Přednáška Martina Mareše o dalších grafových algoritmech.

Pro zvídavé studenty: IPS

Záznamy z přednášky Martina Mareše (Datové struktury II). Je zde například analýza Union find.

Pokud chcete procvičit základní matematické dovednosti Matematické dovednosti.

Pokud aspoň trochu rozumíte anglicky, doporučuji MIT OpenCourseWare.

Zjistěte, kde všude se využívají algoritmy, které se zde učíme (budete překvapeni) CS Theory ScackExchange.

Koukněte se, jak vypadá interview například u Google (anglicky). Zejména doporučuji komentář na konci!

Jestli se chcete naučit psát hezky matematiku, zkuste se podívat na LaTeX. Pro kreslení obrázků se bude hodit například program ipe. LaTeX můžete psát i online například na sharelatex. V případě zájmu vytvořím nějaký ukázkový soubor.