FI:PB164 Seminář z návrhu algoritmů - Informace o předmětu
PB164 Seminář z návrhu algoritmů
Fakulta informatikyjaro 2006
- Rozsah
- 0/2. 2 kr. (plus ukončení). Ukončení: z.
- Vyučující
- Mgr. Lubomír Krejčí (přednášející)
RNDr. Aleš Zlámal (cvičící)
RNDr. Jaroslav Pelikán, Ph.D. (náhr. zkoušející) - Garance
- prof. RNDr. Václav Matyáš, M.Sc., Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Kontaktní osoba: Mgr. Lubomír Krejčí - Rozvrh seminárních/paralelních skupin
- PB164/01: Po 12:00–13:50 B117, L. Krejčí
PB164/02: Po 14:00–15:50 B117, L. Krejčí - Předpoklady
- IB001 Úvod do programování
Základní znalost strukturovaného programování a stavby algoritmu přibližně na úrovni úspěšného ukončení předmětu IB001 Úvod do programování skrze C. - Omezení zápisu do předmětu
- Předmět je určen pouze studentům mateřských oborů.
Předmět si smí zapsat nejvýše 60 stud.
Momentální stav registrace a zápisu: zapsáno: 0/60, pouze zareg.: 0/60 - Mateřské obory/plány
- Aplikovaná informatika (program FI, B-AP)
- Informatika a druhý obor (program FI, B-BI)
- Informatika a druhý obor (program FI, B-FY)
- Informatika a druhý obor (program FI, B-GE)
- Informatika a druhý obor (program FI, B-GK)
- Informatika a druhý obor (program FI, B-CH)
- Informatika a druhý obor (program FI, B-IO)
- Informatika a druhý obor (program FI, B-MA)
- Informatika a druhý obor (program FI, B-SO)
- Informatika a druhý obor (program FI, B-TV)
- Informatika (program FI, B-IN)
- Cíle předmětu
- Předmět je zaměřen na praktické zvládnutí implementace základních algoritmů a programovacích technik s důrazem na využití dynamické proměnné a aplikace teorie grafů
- Osnova
- Dynamická proměnná a její použití
- Implementace základních dynamických datových struktur - zásobník, fronta, lineární seznam a jejich aplikace (převod infix - postfix, vyhodnocení výrazů, radix sort).
- základní postupy pro implementaci topologického grafu - matice incidence a dynamické seznamy. Stavba jednoduchého grafového editoru se schopností vizualizace topologického grafu. Převod dynamické reprezentace topologického grafu na matici incidence a naopak.
- Implementace základních algoritmů pro topologický graf - procházení souvislého topologického grafu do hloubky, do šířky, generování a nalezení sledu, tahu a cesty mezi dvěma uzly v souvislém topologickém grafu. Nalezení komponenty nesouvislého grafu.
- Cesty v grafech - implementace algoritmů pro nalezení nejkratších cest mezi uzly grafu (Dikstrův algoritmus, maticové aplikace)
- Kostry v grafech - implementace algoritmů pro nalezení libovolné a minimální kostry grafu (Borůvka/Kruskal, Jarník/Prim)
- Toky v sítích - implementace Ford-Fulkersononova algoritmu pro nalezení maximálního toku v síti
- Tahy a kružnice - implementace algoritmu pro nalezení Eulerovského tahu a Hamiltonovy kružice v souvislém topologickém grafu - úloha obchodního cestujícího a čínského pošťáka
- Kořenové stromy - implementace kořenových stromů (BVS, AVL, vkládání a odebírání prvků, rotace).
- Možná něco navíc - nejkrásnější nakreslení grafu, barvení grafu, minory grafu.
- Literatura
- DEMEL, Jiří. Grafy a jejich aplikace. Vyd. 1. Praha: Academia, 2002, 257 s. ISBN 8020009906. info
- TÖPFER, Pavel. Algoritmy a programovací techniky. 1. vyd. Praha: Prometheus, 1995, 299 s. ISBN 80-85849-83-6. info
- LIBICHER, Ivan a Pavel TÖPFER. Od problému k algoritmu a programu :sbírka řešených úloh z programování. 1. vyd. Praha: Grada, 1992, 119 s. ISBN 80-85424-82-7. info
- KUČERA, Luděk. Kombinatorické algoritmy. 2., nezměn. vyd. Praha: SNTL - Nakladatelství technické literatury, 1989, 286 s. info
- DEMEL, Jiří. Grafy. Vyd. 1. Praha: SNTL - Nakladatelství technické literatury, 1988, 180 s. info
- PLESNÍK, Ján. Grafové algoritmy. Vyd. 1. Bratislava: Veda, 1983, 343 s. info
- DEMEL, Jiří. Teorie grafů. Vyd. 1. Praha: Ediční středisko ČVUT, 1982, 198 s. info
- Metody hodnocení
- Seminář bude zaměřen na praktické zvládnutí implementace základních dynamických struktur a zakladních algoritmů teorie grafů. Cílem semináře bude praktická implementace uvedených algoritmů v libovolně zvoleném programovacím jazyku. Přibližně polovina každého semináře bude věnována přednesu konkrétního postupu a vysvětlení algoritmu Seminář předpokládá část samostatné práce, včetně případné aplikace znalostí z paralelně běžící přednášky Návrh algoritmů I. Podmínky ukončení semináře: Odevzdaný programový balík, přehledně demonstrující probírané algoritmy.
- Informace učitele
- http://www.fi.muni.cz/~lkrejci/
- Další komentáře
- Předmět je vyučován každoročně.
- Statistika zápisu (jaro 2006, nejnovější)
- Permalink: https://is.muni.cz/predmet/fi/jaro2006/PB164