Programátorské strategie (KIV/PRO)

 

 

Přednášky: Prof. Dr. Ing.Ivana Kolingerová

 

Cvičení: Ing. Alex Kӧnig

 

Okruhy:

 

         Základy algoritmizace, algoritmická složitost v praxi

         Brutální síla, inkrementální algoritmy

         Geometrické algoritmy

         Zábavné algoritmy

         Randomizované algoritmy

         Shlukování

         Data stream algoritmy

         In-place a in situ algoritmy

         Kvantové výpočty

 

Okruhy mohou doznat ještě změny, pokud mě napadne nějaké zvláště vzrušující téma, o kterém byste rozhodně měli něco slyšet. Pokud máte sami nějaký návrh zajímavého tématu, dejte vědět, když to bude v mých silách a v rámci koncepce předmětu, vyhovím.

 

Literatura:

 

·         základní:

 

 

Cvičení: Hlavním bodem programu je rozbor a prezentace algoritmů a návrh nových.

 

 

Požadavky k zápočtu:

 

1. Budou postupně zadány tři typy úloh. Povinné jsou první dva, třetí v případě zájmu studenta o získání dalších bodů.

 

Řešení budou bodována podle odhadované obtížnosti úkolu a podle kvality vypracování. Pozdní odevzdání bude penalizováno bodovou ztrátou. Pokud bude úloha odevzdána až v náhradním termínu zápočtu, aniž jste k tomu měli vážný, zejména zdravotní důvod, bude bodována jen polovinou původně nabízeného počtu bodů.

 

2. Na cvičení je možné získat body za aktivitu – nápady, postřehy, prezentace řešení úloh. Ze cvičení budou také různé povinné nebo dobrovolné domácí úkoly (obvykle jde o promyšlení nějakého problému či návrh algoritmu, případně prezentace na dohodnuté téma), které mohou přinést další body (i záporné ;-).

 

Technické požadavky na odevzdávané úlohy:

 

Kromě zdrojových kódů přiložte vždy nějakou spustitelnou verzi, i v případě Javy. K úloze je vždy přiložena dokumentace zaměřená především na speciality vašeho řešení, tedy algoritmu, a speciality vaší implementace, tedy programu. Délka dokumentace by měla odpovídat náročnosti úlohy, čili od pár řádek k několika stránkám. Na začátku uveďte jméno a příjmení autora a zadání úlohy. Dokumentaci stačí odevzdat v elektronické podobě, formát PS nebo PDF. Totéž platí pro úlohy, kde výstupem je textová analýza či návrh algoritmu bez implementace. Řešení odevzdáváte cvičícímu způsobem, jaký si určí.

 

Student, který dosáhne největšího počtu bodů, bude odměněn „zkouškou bez zkoušky“.  Také student, který dosáhne nejvyššího počtu bodů za aktivitu na cvičení, bude odměněn „zkouškou bez zkoušky“.  Takto odměním jednak celkové vítěze, jednak první dva ze tří vítězů skupin (tím kompenzuji případnou různost bodových zisků v různých skupinách).

 

Minimální požadovaný počet bodů na zápočet: 30

Minimální potřebný počet bodů z písemky u zkoušky: 15, maximální možný počet: 30 z 3 otázek po 10 bodech

 

Celkové hodnocení (podmínkou je dosažení min. požadovaného počtu bodů k zápočtu i u zkoušky):

 61 bodů a více  -  výborně

 51 – 60 bodů    - velmi dobře

 45 – 50 bodů    - dobře

 méně bodů       - nevyhověl