Programovacie techniky

Prednášajúci:Martin Drozda
Cvičiaci:Pavol Marák
Linky:Sylabus
Kategória predmetu:,
Organizácia
Cvičenia
Podmienky
Viac

Organizácia predmetu

Prednáška:

pondelok 13:00-15:00 online
utorok 11:00-13:00 online (tutoriál)

Konzultácie:

Dohodnutie termínu cez email, C601.

Učebný text

Zbierka príkladov v1.05
Krátky úvod do jazyka C++ v1.04

Vzorový test

Riadny termín 2020/21
Opravný termín 2020/21

Riadny termín 2019/20
Opravný termín 2019/20

Riadny termín 2018/19
Opravný termín 2018/19

Plán semestra

  • Úvod, Bjarne, lokálne premenné, preťažovanie funkcií, referencia &, univerzálna referencia &&, const * const, kompilácia C++ kódu. Prednáška

  • Nedefinované správanie, typová bezpečnosť, menné priestory, organizácia pamäte, C++ zásobník, zásobník, fronta, zreťazený zoznam. Prednáška

  • Zložitosť, Bubble sort, insertion sort, quick sort, merge sort. Prednáška

  • O notácia, stabilné triedenie, heap sort. Prednáška

  • nullptr, trieda, objekt, konštruktor, deštruktor. Prednáška

  • string, uniformná inicializácia, konverzný konštruktor, preťažovanie operátorov, kopírovanie (copy), presúvanie (move). Prednáška

  • auto, decltype, STL, vector, iterátory, výnimky. Prednáška

  • Indexovanie, array, deque, stack, queue, map, multimap, set, multiset, binárny vyhľadávací strom. Prednáška

  • Hašovanie, unordered kontajner, odvodená trieda, virtuálna metóda, inline, friend, const metóda. Prednáška

  • Hľadanie do hĺbky, hľadanie do šírky, najkratšia cesta v grafe, Dijkstrov algoritmus. Prednáška

  • = delete, virtuálna trieda, friend trieda, komparátor, polymorfizmus, template, virtuálny deštruktor, override, final. Prednáška

  • constexpr, C++ pretypovanie, chytré smerníky, emplace/emplace_back, záver. Prednáška

Cvičenia

Všetky podstatné informácie týkajúce sa cvičení nájdete na webstránke https://pt.fei.software/

Cvičenia sú realizované online formou prostredníctvom služby Microsoft Teams. Je nutné mať vytvorený účet Microsoft Office 365 (registrovať sa treba pomocou vašej STU emailovej adresy a pri registrácii použiť vaše reálne meno a priezvisko). Takto vytvorený účet následne použijete na pripojenie sa k Microsoft Teams tímu vytvorenému pre predmet Programovacie techniky.

Odkaz na pripojenie sa k online cvičeniam: MS Teams (Programovacie techniky)

Podmienky absolvovania

Priebežné hodnotenie: 40 bodov, min. 20 bodov na získanie zápočtu.
Skúška: 60 bodov.

Účasť na prednáškach aj cvičenia je povinná!

News and links

http://mifeet.alpaka.cz/algo/algorithms.swf (animácie rôznych algoritmov)

http://www.algoritmy.net (rôzne témy súvisiace s programovaním)

http://www.exfort.org/dsa/quick/dsa_quicksort.swf (quick sort (http://www.exfort.org/dsa/quick/index.htm))

Úlohy na riešenie

A1. Naimplementuj zreťazený zoznam.
A2. Naimplementuj zásobník (stack).
A3. Naimplementuj frontu (queue).
A4. Naimplementuj výmenu (swap) na zreťazenom zozname.