460-2003/01 – Algoritmy II (ALG II)
Garantující katedra | Katedra informatiky | Kredity | 6 |
Garant předmětu | doc. Mgr. Jiří Dvorský, Ph.D. | Garant verze předmětu | doc. Mgr. Jiří Dvorský, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinný |
Ročník | 1 | Semestr | letní |
| | Jazyk výuky | čeština |
Rok zavedení | 2010/2011 | Rok zrušení | 2012/2013 |
Určeno pro fakulty | FEI | Určeno pro typy studia | bakalářské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Cílem předmětu je seznámit studenty s objektově orientovaným programováním a rozvinout znalosti studentů do oblasti datových struktur. Po absolvování předmětu bude student schopen:
analyzovat zadaný problém z pozice OOP,
vytvořit a odladit program C++ s využitím OOP,
využívat binární stromy a hašovací tabulky,
posoudit efektivitu zvoleného řešení daného problému.
Vyučovací metody
Přednášky
Cvičení (v učebně)
Anotace
Tento předmět je pokračováním předmětu Algoritmy I. V tomto kurzu bude kombinován výklad objektově orientovaného programování s představením dalších často používaných datových struktur - binárních stromů a hašovacích tabulek. OOP je chápáno spíše směrem ke zvládnutí implementace nejrůznějších tabulek, seznamů s operacemi vkládání, následného vyhledávání a rušení elementů, než směrem k návrhu komplexnějších systémů. Tento cíl bude naplněn v kurzech zabývajících se softwarovým inženýrstvím.
Povinná literatura:
Doporučená literatura:
Forma způsobu ověření studijních výsledků a další požadavky na studenta
Realizace a obhajoba projektu.
Programování jednoduchých aplikací na cvičeních.
E-learning
Další požadavky na studenta
Další požadavky na studenta nejsou kladeny.
Prerekvizity
Korekvizity
Předmět nemá žádné korekvizity.
Osnova předmětu
Náplň přednášek
Úvodní přednáška, organizační záležitosti, souhrn nutných znalostí z předmětu Algoritmy I
Objektově orientované paradigma, objekt, třída, atribut, metoda
OOP v C++, dynamická alokace paměti
Dědičnost
Polymorfismus, virtuální metody
Abstraktní datové typy, využití OOP
Graf jako datová struktura, průchody do hloubky a do šířky
Binární stromy, definice, vyhledávání
Binární stromy, vkládání, rušení vrcholů, průchody stromem
Přehled vyvážených binárních stromů, B-stromy
Hašování
Vyhledávání v textu
Náplň počítačových cvičení
Opakování z předmětu Algoritmy I
Implementace třídy v C++
Konstruktory a destruktory
Dynamická alokace paměti
Dědičnost, ukázka hierarchie tříd
Polymorfismus, čistě virtuální metody
Grafy, možnosti implementace grafů
Průchody grafem
Binární stromy
Využití hašovacích tabulek
Vyhledávání v textu
Náplň projektů
Zadání projektů budou směřovat ke zvládnutí OOP.
Podmínky absolvování předmětu
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky