PředmětyPředměty(verze: 945)
Předmět, akademický rok 2023/2024
   Přihlásit přes CAS
Základy programování II - MC260P26
Anglický název: Computer programming fundamentals II
Český název: Základy programování II
Zajišťuje: Katedra fyzikální a makromol. chemie (31-260)
Fakulta: Přírodovědecká fakulta
Platnost: od 2023
Semestr: letní
E-Kredity: 3
Způsob provedení zkoušky: letní s.:
Rozsah, examinace: letní s.:2/0, Zk [HT]
Počet míst: 16
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: nevyučován
Jazyk výuky: čeština
Vysvětlení: nedojde-li k jine dohode, kurz probiha pouze v letech x, kde (x+1) mod 3=0
Poznámka: povolen pro zápis po webu
Garant: doc. RNDr. Filip Uhlík, Ph.D.
Výsledky anket   Termíny zkoušek   Rozvrh   
Anotace -
Poslední úprava: doc. RNDr. Filip Uhlík, Ph.D. (05.04.2016)
Tato přednáška pokrývá základní datové struktury (například seznamy a stromy), algoritmy a jejich analýzu (například vyhledávání, třídění a grafové algoritmy). Obecné programovací techniky (například "rozděl a panuj" a "dynamické programování") jsou také diskutovány. Tato přednáška je volným pokračováním přednášky Základy programování I. Příklady jsou v programovacím jazyce C.

V případě, že se předmět nevyučuje, neváhejte a zapište si Programování pro informatiky na MFF.
Literatura -
Poslední úprava: ZUSKOVA (29.01.2003)

D. E. Knuth: The Art of Computer Programming, Addison-Wesley, 1969.

Požadavky ke zkoušce -
Poslední úprava: doc. RNDr. Filip Uhlík, Ph.D. (15.10.2020)

Zkouška se skládá z písemné části, kdy student napíše program řešící dohodnutou úlohu a ústní části, kdy se zkoušejícím řeší jeho správnost a případné úpravy. Bude-li to nutné, budou kurz a zkouška distační.

Sylabus -
Poslední úprava: doc. RNDr. Filip Uhlík, Ph.D. (07.06.2019)

Algoritmus a jeho složitost

co je to algoritmus? časová a prostorová složitost, asymptotická složitost a notace s velkým O

Základní datové struktury a algoritmy

sequential allocation, linked allocation, zásobník (stack), fronta (queue), stromy, halda (heap)

Rozděl a panuj (Divide and Conquer)

Dynamické programování

Vyhledávání (Searching)

sekvenční vyhledávání, binární vyhledávání, binární vyhledávací stromy, AVL stromy, 2-3 stromy, B-stromy, hashing, externí vyhledávání

Třídění (Sorting)

insert a select sort, quick, heap a merge sort, externí třídění

Grafové algoritmy

průchod grafem, komponenty grafu, nejkratší cesta v grafu, minimální kostra grafu

 
Univerzita Karlova | Informační systém UK