Efektivní programování 1
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
BI-EP1 | Z | 4 | 2P+2C | česky |
- Garant předmětu:
- Martin Kačer
- Přednášející:
- Martin Kačer
- Cvičící:
- Martin Kačer
- Předmět zajišťuje:
- katedra teoretické informatiky
- Anotace:
-
Studenti tohoto předmětu si prakticky ověří implementaci algoritmů.
- Požadavky:
- Osnova přednášek:
-
1. Operační a paměťová složitost algoritmů - opakování, určování.
2. Vstup a výstup, zpracování.
3. Datové struktury a jejich implementace v C++ a Javě.
4. Rekurze, výhody a nevýhody.
5. Dynamické programování, grafové algoritmy.
6. Programování a matematika,výpočetní geometrie.
- Osnova cvičení:
-
Seznámení se systémem, řešení cvičných triviálních úloh.
Řešení úlohy.
Zpracování vstupu a formátování výstupu.
Řešení úlohy.
Základní programovací techniky: cykly, vyhledávání, řazení, částečné řazení.
Datové struktury, STL v C++ a balíček java.util v Javě
Řešení úlohy.
Rekurze a její použití v praxi.
Řešení úlohy.
Dynamické programování, grafové algoritmy.
Řešení úlohy.
Programování a matematika,výpočetní geometrie.
Řešení úlohy.
- Cíle studia:
-
V rámci předmětu se na praktických příkladech ukazuje, že kdokoli a
v jakémkoli programu může udělat chybu. Účelem je osvojit si techniky,
které pravděpodobnost chyb snižují, zejména naučit se navrhnout takové
řešení, které bude dostatečně efektivní, ale současně co nejméně náročné
na implementaci. Pokud chyby vzniknou, procvičují se dále způsoby ladění
programu.
- Studijní materiály:
-
Steven S. Skiena, Miguel Revilla: Programming Challenges
- Poznámka:
-
Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/BI-EP1/
- Další informace:
- https://courses.fit.cvut.cz/BI-EP1/
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů:
-
- Bc. program Informatika, pro fázi studia bez oboru, 2015-2020 (volitelný předmět)
- Bc. obor Bezpečnost a informační technologie, 2015-2020 (volitelný předmět)
- Bc. obor Teoretická informatika, 2015-2020 (volitelný předmět)
- Bc. obor Počítačové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Informační systémy a management, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Softwarové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Webové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Počítačová grafika, 2015-2020 (volitelný předmět)
- Bc. obor Znalostní inženýrství, 2018-2020 (volitelný předmět)