FI:IB002 Návrh algoritmů I - Informace o předmětu
IB002 Návrh algoritmů I
Fakulta informatikyjaro 2012
- Rozsah
- 2/1. 3 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: k, z.
- Vyučující
- RNDr. Libor Škarvada (přednášející)
Mgr. Bc. Matúš Goljer (cvičící)
Mgr. Marek Klučár (cvičící)
RNDr. Štěpán Kozák (cvičící)
Mgr. Matúš Madzin (cvičící)
Mgr. Josef Pacula (cvičící)
Oldřich Petr (cvičící)
RNDr. Tomáš Raček, Ph.D. (cvičící)
doc. RNDr. David Svoboda, Ph.D. (cvičící)
Mgr. Filip Štefaňák (cvičící)
Mgr. Jiří Uhlíř (cvičící)
Mgr. Matej Kollár (pomocník) - Garance
- prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: RNDr. Libor Škarvada
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky - Rozvrh
- Po 16:00–17:50 D3, Po 16:00–17:50 D1
- Rozvrh seminárních/paralelních skupin:
IB002/02: každou lichou středu 10:00–11:50 G101, M. Klučár
IB002/03: každé sudé úterý 18:00–19:50 G123, M. Klučár
IB002/04: každé liché úterý 18:00–19:50 G123, M. Klučár
IB002/05: každou sudou středu 8:00–9:50 G101, J. Pacula
IB002/06: každou lichou středu 8:00–9:50 G101, J. Pacula
IB002/07: každou sudou středu 16:00–17:50 B204, M. Madzin
IB002/08: každou lichou středu 16:00–17:50 B204, M. Madzin
IB002/09: každou sudou středu 18:00–19:50 B204, Š. Kozák
IB002/10: každou lichou středu 18:00–19:50 B204, Š. Kozák
IB002/11: každý sudý čtvrtek 12:00–13:50 C525, D. Svoboda
IB002/12: každý lichý čtvrtek 12:00–13:50 C525, D. Svoboda
IB002/13: každý sudý čtvrtek 14:00–15:50 C525, F. Štefaňák
IB002/14: každý lichý čtvrtek 14:00–15:50 C525, F. Štefaňák
IB002/15: každý sudý pátek 8:00–9:50 C525, J. Uhlíř
IB002/16: každý lichý pátek 8:00–9:50 C525, T. Raček
IB002/17: každý sudý pátek 10:00–11:50 C525, J. Uhlíř
IB002/18: každý lichý pátek 10:00–11:50 C525, T. Raček
IB002/19: každé sudé úterý 16:00–17:50 G123, M. Goljer
IB002/20: každé liché úterý 16:00–17:50 G123, M. Goljer - Předpoklady
- Předpokládá se, že posluchači alespoň na intuitivní úrovni rozumějí základním pojmům (algoritmus, výpočet, datová struktura,...) a že se již setkali se zápisem algoritmů v imperativním i funkcionálním stylu.
- Omezení zápisu do předmětu
- Předmět je nabízen i studentům mimo mateřské obory.
- Mateřské obory/plány
- předmět má 29 mateřských oborů, zobrazit
- Cíle předmětu
- Kurs probírá základní techniky analýzy algoritmů, datové struktury a operace nad nimi. Zaměřuje se na dokazování korektnosti algoritmů a na jejich efektivnost. Základní algoritmické pojmy a konstrukce jsou uváděny bez přímé návaznosti na konkrétní programovací jazyk a bez požadavků na jejich praktickou programovou realizaci. Cílem je naučit studenta pracovat s vlastními algoritmy oproštěnými od implementačních detailů. To dovoluje presentovat poměrně široký záběr technik, používaných ve funkcionálním, imperativním i v objektově orientovaném programování.
- Osnova
- Základy analýzy algoritmů: Korektnost algoritmu, vstupní a výstupní podmínky, parciální korektnost, konvergence, verifikace. Délka výpočtu, složitost algoritmu, složitost problému. Asymptotická analýza časové a prostorové složitosti, růst funkcí, využití rekurentních relací při analýze algoritmů.
- Fundamentální datové struktury: Seznamy, zásobníky a fronty. Binární vyhledávací stromy, vyvážené stromy, representace množin.
- Řadicí algoritmy: Řazení rozdělováním, slučováním, haldou, dolní odhad složitosti.
- Základní grafové algoritmy: Representace grafů. Procházení grafu do hloubky, zúplnění uspořádání, silně souvislé komponenty. Procházení grafu do šířky, Dijkstrův algoritmus. Minimální kostry grafu.
- Literatura
- Výukové metody
- Kurs probíhá formou přednášek a cvičení k přenáškám.
- Metody hodnocení
- Zkouška je písemná a má dvě části -- v polovině semestru a na jeho konci.
- Navazující předměty
- Informace učitele
- http://www.fi.muni.cz/~libor/vyuka/IB002/
- Další komentáře
- Studijní materiály
Předmět je vyučován každoročně. - Nachází se v prerekvizitách jiných předmětů
- IB114 Úvod do programování a algoritmizace II
(IB111 || IB113) && !IB002 && !NOW(IB002) - IV003 Algorithms and Data Structures II
IB002 || program(PřF:N-MA) - IV100 Paralelní a distribuované výpočty
IB002 - MA015 Graph Algorithms
IB002||(typ_studia(N)&&fakulta(fi))
- IB114 Úvod do programování a algoritmizace II
- Statistika zápisu (jaro 2012, nejnovější)
- Permalink: https://is.muni.cz/predmet/fi/jaro2012/IB002