Formát velmi podobný tomu v létě. Nebyly k dispozici (tedy nám ne a na katedře jsem si také nevšiml) zmíněné desky s informacemi o studentech. Bylo nás 10 studentů (3 různé obory) a 13 členů komise (zkoušejících).
Zkoušející mají interní rozvrh, podle kterého na začátku zadají otázky. Více méně v náhodném pořadí dostanete otázky, které si máte připravit na 9:45, 10:30, 11:15, 12:00 a 12:45. První zkoušení začíná v 9:45, pak už je to dost náhodné, podle toho jak máte vy a zkoušející čas. Možná bych jenom poznamenal, že pokud má zkoušející čas, a je takového typu, tak si s vámi bude klidně povídat hodinu . Pořadí otázek je skutečně náhodné.
Formát jednotlivého zkoušení je v režii zkoušejícího. Zpravidla se dívá do vaší přípravy a buď jí čte nebo po vás chce, abyste mu o tom povídali. Zkouška je spíše do široka, než do hloubky. Sami si můžete udělat obrázek o tom, kolik je toho třeba říct/napsat z informací zde, nebo v jiných vláknech. Někteří zkoušející již při zadání otázky řekli, na co bychom se měli zaměřit, jiní jen sdělili téma.
1. Datové struktury: Splay stromy (Vladan Majerech)
Řekl jsem motivaci (manipulace s podmnožinou prvků v BST), přístup k řešení (offline - staticky opt. strom ; online - právě splay stromy), ukázal jsem co to je Splay (zig, zig-zig, zig-zag) a kde se to v tom stromě používá. Oznámil jsem, že se dá ukázat, že splay má amortizovaně logaritmickou složitost, vzhledem k velikosti podmnožiny.
~Průběh zkoušky:
Zk: Jaké jsou operace v BST
Já: find, insert, delete
Zk: Tak strukturu s takovým interfacem bych si od vás nekoupil, nemáte tam ještě něco?
Já: ? (pak po dlouhé diskusi obecně o stromech a datových strukturách a směrování ke správné odpovědi)
Já: prvek.next()
Zk: Super, škoda, že se to neinzeruje i na přednášce
...
Zk: Kdybych vás mučil, řeknete mi myšlenku důkazu analýzu složitosti.
Já: Mučit mě nemusíte (a jen slovně jsem naznačil, že uděláme analýzu jednotlivých rotací, pak analýzu i kroků a že se to tam někde teleskopicky odečte)
Zk: Tak nějak
...
Zk: Proč se (v zig-zig stepu) tahle rotace dělá tak divně?
Já: Abych se přiznal, tak přesně nevím, ale existuje na to protipříklad, kde se to rozbije
(Zk se mi snažil vysvětlit proč a pak odešel, spokojen s mým výkonem)
2. Základy složitosti a vyčíslitelnosti - Algoritmicky nerozhodnutelné problémy (Martin Klazar)
Připoměl jsem značení pro zastavení se nad vstupem, zacyklení se, řekl jsem něco o univerzálním TS a jazyku, pak o převoditelnosti s vlastnostmi, pak ukázal co to je HALT a že je částečně rozhodnutelný, pak převod Lu <= HALT a z toho implikaci, že HALT je nerozhodnutelný.
Zkoušející se mě ptal, jestli znám ještě nějaké další nerozhodnutelné problémy, tak jsem mu řekl, že třeba ten Lu, nebo DIAG a pak ukázal, že existují jazyky, které nejsou ani částečně rozhodnutelné, tudíž ani rozhodnutelné. Zajímal se, jestli neznám nějaký příklad z teorie čísel. Nevzpomněl jsem si na Diofantické rovnice (má polynom celočíselné kořeny?).
3. Systémové aspekty počítačů (Pavel Ježek) - Je objektový návrh aplikací vhodný pro high-performance výpočty?
Ukázal jsem, že procházení pole a procházení spojového seznamu je jiná věc a proč (cache, prefetcher), řekl jsem, že pokud máme pole tříd, tak může být výhodnější reprezentace jako třída polí (tedy vlastně layout v paměti transponujeme, kdo chodil na High-Perf computing od Bednárka, tak ví) a naznačil jsem, že se tam může podařit využít vektorové instrukce.
Zkoušejicí se mě ptal co to je ten prefetcher a co to jsou ty vektorové instrukce, pak mi dal příklad
abstract class Entity { abstract void update(); }
class Wolf : Entity { ... }
class Bear : Entity { ... }
a ptal se jestli to je efektivní. Řekl jsem že ne kvůli dispatchi virtuálních funkcí a řekl, že se to dá zlepšit tak, že si první uložíme Vlky a pak medvědy. Zkoušející se pak ptal na nějaké drobnosti a spokojen odešel.
4. Paralelní a distribuované systémy - Kauzalita zpráv (doručování + jak to funguje u překrývajících se skupin; Martin Kruliš)
Popsal jsem k čemu to je a že se to řeší vektorovýma hodinama, popsal jsem co to jsou logické hodiny a jak se používají ty vektorové. Řekl jsem, že u skupin se to řeší vektorem vektorových hodin (maticové hodiny), ale algoritmus jsem nepopisoval.
Zkoušející se dost vrtal v tom co to jsou ty logické hodiny a proč nejdou použít fyzické, pak chtěl detailně vysvětlit ten algoritmus + jednoduchý příklad (dal jsem to, co je na slidech z přednášky k PDS). Ptal se jak se to řeší u těch skupin, řekl jsem že nevím. Pak se ptal co to jsou Lamportovy hodiny a jak se od vektorových liší (chyták, je to to samé). Pak říkal, že je škoda, že jsem nevěděl ty skupiny, ale jinak OK.
5. Moderní koncepty programování - Aspekty (Petr Hnětynka)
Popsal jsem co to jsou ty apsekty, proč se to používá a kde se to používá (logování, cache), ukázal takový pseudo-example z AspectJ. Popsal jsem jak je to implementované (instrumetace/weaving)
Se zkoušejícím jsme se více méně bavili o detailech a dalších možnostech použití (transakce u enterprise systémů jsem nevěděl, ale vymyslel).
Softwarové systémy 17.9.2018
Vše o státnicích úspěšně završujících roky studia na naší alma mater.
Přejít na
- Aktuální informace
- ↳ Studijní oddělení
- ↳ Knihovna
- ↳ Studentská komora Akademického senátu (SKAS)
- ↳ Volby na ak. rok 2013/2014
- Všichni
- ↳ Práce
- ↳ Klubovna
- ↳ Toto fórum
- ↳ Státní závěrečná zkouška
- ↳ Bakalářské SZZ
- ↳ Magisterské SZZ
- ↳ Info for foreign students
- ↳ Akce
- ↳ Fotbalový turnaj 2008
- Informatika ZS
- ↳ Výuka ZS 1. ročník
- ↳ DMI002 Diskrétní matematika
- ↳ 2007
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ MAI054 Matematická analýza I
- ↳ 2007
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ MAI057 Lineární algebra I
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ PRG030 Programování I
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ SWI120 Principy počítačů a operačních systémů
- ↳ SWI087 Principy počítačů
- ↳ Ostatní
- ↳ DMI051 Úvod do řešení problémů kombinatorických, mat. i jiných (IPS) II
- ↳ Výuka ZS 2. ročník
- ↳ MAI056 Matematická analýza III
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ OFY016 Fyzika pro nefyziky I - Svět kolem nás
- ↳ SWI089 Ochrana informace I
- ↳ SWI096 Internet
- ↳ TIN061 Algoritmy a datové struktury II
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ Ostatní
- ↳ Aplikační software
- ↳ NPRG035 Jazyk C# a platforma .NET
- ↳ NPRG041 Programování v C++
- ↳ AIL062 Výroková a predikátová logika
- ↳ 2007
- ↳ 2006
- ↳ 2005
- ↳ PGR013 Java
- ↳ MAI059 Pravděpodobnost a statistika
- ↳ Výuka ZS 3. ročník
- ↳ SWI099 Administrace Systemu Windows
- ↳ SWI015 Programování v Unixu
- ↳ SWI098 Principy překladačů
- ↳ 2006
- ↳ Ostatní
- ↳ DBI007 Organizace a zpracování dat I
- ↳ 2006
- ↳ MAI062 Algebra I
- ↳ PGR003 Počítačová grafika I
- ↳ SWI090 Počítačové sítě I
- ↳ Výuka ZS NMgr.
- ↳ TIN066 Datové struktury I
- ↳ TIN062 Složitost I
- ↳ TIN064 Vyčíslitelnost I
- ↳ MAI060 Pravděpodobnostní metody
- ↳ SWI004 Operační systémy
- ↳ SWI106 Administrace Unixu
- ↳ Ostatní
- ↳ NTIN090 Základy složitosti a vyčíslitelnosti
- ↳ OPT042 Programování s omezujícími podmínkami
- ↳ AIL002 Neuronové sítě
- ↳ AIL025 Evoluční algoritmy I
- ↳ AIL069 Umělá inteligence I
- ↳ NDBI001 Dotazovací jazyky I
- ↳ TIN070 Testování software
- ↳ NDBI027 Datové sklady a analytické metody pro Business Intelligence
- ↳ NDBI034 Vyhledávání multimediálního obsahu na webu
- ↳ NPRG023 Softwarový projekt
- Informatika LS
- ↳ Výuka LS 1. ročník
- ↳ MAI055 Matematická analýza II
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ MAI058 Lineární algebra II
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ PRG031 Programování II
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ TIN060 Algoritmy a datové struktury I
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ SWI095 Úvod do UNIXu
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ Ostatní
- ↳ Výuka LS 2. ročník
- ↳ SWI071 Ochrana informace II
- ↳ TIN071 Automaty a gramatiky
- ↳ PRG033 Ročníkový projekt - specifikace
- ↳ DMI011 Kombinatorika a grafy I
- ↳ DBI025 Databázové systémy
- ↳ Ostatní
- ↳ SWI036 Programování pro Windows I & II
- ↳ SWI096 Internet
- ↳ PRG005 Neprocedurální programování
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ NSWI143 Architektura počítačů
- ↳ Výuka LS 3. ročník
- ↳ Ostatní
- ↳ PGR004 Počítačová grafika II
- ↳ PRG036 Technologie XML
- ↳ SZZ026 Bakalářská práce
- ↳ PRG003 Metodika programování a filozofie programovacích jazyků
- ↳ MAI064 Matematické struktury
- ↳ MAI042 Numerická matematika
- ↳ SWI021 Počítačové sítě II
- ↳ SWI045 Rodina protokolů TCP/IP
- ↳ NPRG038 Pokročilé programování pro .NET
- ↳ Výuka LS NMgr.
- ↳ SWI109 Konstrukce překladačů
- ↳ NPRG042 Programování v paralelním prostředí
- ↳ SWI117 Technologie vývoje webových aplikací
- ↳ SWI026 Softwarové inženýrství
- ↳ MAI061 Metody matematické statistiky
- ↳ I1 Ostatní Teoretická informatika
- ↳ I2 Ostatní Softwarové systémy
- ↳ I3 Ostatní Matematická lingvistika
- ↳ I4 Ostatní Diskrétní modely a algoritmy
- ↳ AIL026 Evoluční algoritmy II
- ↳ AIL070 Umělá inteligence II
- ↳ NDBI010 Dokumentografické informační systémy
- ↳ NDBI023 Dobývání znalostí
- ↳ NDBI016 Transakce
- ↳ NDBI006 Dotazovací jazyky II
- ↳ NAIL029 Strojové učení
- Matematika
- ↳ Výuka LS 1. ročník
- ↳ Lineární algebra 2
- ↳ Programování 2
- ↳ Matematická analýza 1b
- ↳ Volitelné předměty
- ↳ Výuka LS 2. ročník
- ↳ Pravděpodobnost a statistika
- ↳ Teorie Míry a integrálu II
- ↳ Algebra II
- ↳ Matematická analýza 2b
- ↳ Ostatní
- ↳ Výuka LS 3. ročník
- ↳ Předměty numeriky
- ↳ Úvod do funcionální analýzy
- ↳ Funkcionální analýza I
- ↳ Vybrané partie z funkcionální analýzy
- ↳ Náhodné procesy 2
- ↳ Matematická statistika 2
- ↳ Teorie pravděpodobnosti 2
- ↳ Matematická ekonomie
- ↳ Ostatní
- ↳ LS - Předměty MMIB a pokročilé Algebry
- ↳ Všeobecná diskuse
- ↳ Počítačová algebra
- ↳ Teorie čísel a RSA
- ↳ Aplikovaná kryptografie II
- ↳ Standardy v kryptografii
- ↳ Kryptoanalytické útoky
- ↳ Aplikace bezpečnostních mechanismů
- ↳ Kvantové a DNA počítače
- ↳ Faktorizace velkých čísel
- ↳ Algebraická geometrie v kladné charakteristice
- ↳ Výuka ZS 1. ročník
- ↳ MAA001 Matematická analýza 1a
- ↳ PRM044 Programování I
- ↳ MAA079 Proseminář z kalkulu 1a
- ↳ DMA005 Diskrétní matematika
- ↳ ALG001 Lineární algebra a geometrie I
- ↳ Ostatní
- ↳ Volitelné předměty
- ↳ Výuka ZS 2. ročník
- ↳ MIB
- ↳ Matematická analýza 2a
- ↳ Teorie míry a integrálu
- ↳ Numerika
- ↳ Algebra
- ↳ Předměty finanční matematiky
- ↳ Ostatní
- ↳ Výuka ZS 3. ročník
- ↳ Matematická statistika
- ↳ Teorie pravděpodobnosti
- ↳ Náhodné procesy
- ↳ Optimalizace
- ↳ Předměty numeriky
- ↳ Předměty finanční matematiky
- ↳ Komplexní analýza
- ↳ Funcionální analýza
- ↳ Ostatní
- ↳ ZS - předměty MMIB a pokročilé Algebry
- ↳ Úvod do algebry
- ↳ Složitost pro kryptografii
- ↳ Samoopravné kódy
- ↳ Teoretická kryptografie
- ↳ Aplikovaná kryptografie I
- ↳ Datové a procesní modely
- ↳ Eliptické křivky
- ↳ Členění kryptografických standardů
- ↳ Kryptografické protokoly
- ↳ Úvod do teorie grup
- ↳ Právní aspekty zabezpečení dat
- ↳ Komutativní okruhy
- Fyzika ZS
- ↳ Výuka ZS 1. ročník
- ↳ OFY067 Fyzika v experimentech I
- ↳ MAF027 Lineární algebra I
- ↳ OFY021 Fyzika I (mechanika a molekulová fyzika)
- ↳ OFY056 Programování pro fyziky
- ↳ MAF033 Matematická analýza I
- Oborový mix aktuální
- ↳ Anglický jazyk
- ↳ Tělesná výchova
- ↳ Granty GAUK
- Odkazy
- ↳ Wiki
- ↳ SKAS
- ↳ Spolek Matfyzák
- Matematika Archiv
- ↳ Výuka LS 2006/2007 3. ročník
- ↳ Předměty numeriky
- ↳ Úvod do funcionální analýzy
- ↳ Náhodné procesy 2
- ↳ Matematická statistika 2
- ↳ Teorie pravděpodobnosti 2
- ↳ Matematická ekonomie
- ↳ Výuka LS 2006/2007 2. ročník
- ↳ Pravděpodobnost a statistika
- ↳ Teorie Míry a integrálu II
- ↳ Angličtina
- ↳ Algebra II
- ↳ Matematická analýza 2b
- ↳ Ostatní
- ↳ Výuka LS 2006/2007 1. ročník
- ↳ Volitelné předměty
- ↳ Lineární algebra 2
- ↳ Programování 2
- ↳ Matematická analýza 1b
- Zrušené předměty
- ↳ SWI087 Principy počítačů
- ↳ SWI120 Principy počítačů a operačních systémů
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ PRG029 Programování v C++
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ PRG032 Objektově orientované programování
- ↳ 2006
- ↳ 2005
- ↳ 2004
- ↳ SWI097 Základy operačních systémů
- ↳ NDBI003 Organizace a zpracování dat II
- Roztřídit (resty)
- ↳ Výuka ZS 2005/06 2. ročník
- ↳ Předměty informační bezpečnosti
- ↳ Předměty finanční matematiky
- ↳ Teorie míry a integrálu
- ↳ Numerika
- ↳ Algebra
- ↳ Analýza/kalkulus
- ↳ Matematika obecně
- ↳ Výuka LS 2005/06 2.ročník
- ↳ Základy matematického modelování
- ↳ Finanční management
- ↳ Úvod do optimalizace
- ↳ Numerika
- ↳ Kalkulus
- ↳ Angličtina
- ↳ Diferenciální geometrie
- ↳ Pravděpodobnost a statistika
- ↳ Teorie míry a integrálu II
- ↳ Algebra II
- ↳ Analýza 2b