| 
        Vyučující
     | 
    
        
            
                - 
                    Beránek Ladislav, prof. Ing. CSc., MBA
                
 
            
         
     | 
    | 
        Obsah předmětu
     | 
    
        1. Grafy a jejich reprezentace 2. Prohledávání prostoru grafu 3. Hledání nejkratší cesty 4. Hledání minimální kostry 5. Hledání maximálního toku 6. Algoritmus rozděl a panuj 7. Dynamické programování 8. Vyhledávání v textu 9. Hašovací tabulka 10. Šifrovací algoritmy
         
         
     | 
    | 
        Studijní aktivity a metody výuky
     | 
    
        
        Monologická (výklad, přednáška, instruktáž)
        
            
                    
                
                    
                    - Semestrální práce
                        - 12 hodin za semestr
                    
 
                
                    
                    - Účast na výuce
                        - 56 hodin za semestr
                    
 
                
                    
                    - Příprava na zápočet
                        - 24 hodin za semestr
                    
 
                
                    
                    - Příprava na zkoušku
                        - 24 hodin za semestr
                    
 
                
                    
                    - Domácí příprava na výuku
                        - 44 hodin za semestr
                    
 
                
             
        
        
     | 
    
    
        
        
            | 
                Výstupy z učení
             | 
        
        
            
                
                V předmětu Algoritmy II budou studenti seznámeni s pokročilejšími algoritmickými postupy. Budou probrány způsoby reprezentace grafu a základní grafové algoritmy. Součástí kurzu je také přehled obecných technik návrhu algoritmů jako je rekurze, rozděl a panuj, backtracking, dynamické programování a hladové algoritmy. Vysvětleny budou také hašovací tabulky a šifrovací algoritmy.
                 
                Absolvent kurzu bude rozumět složitějším algoritmům a bude schopen používat je při vytváření svých programů. Porozumí algoritmům, které se používají v operačních systémech (souborové tabulky) i počítačových sítích (při optimalizaci směrování) a získá přehled základních způsobů komprese.
                 
                
             | 
        
        
            | 
                Předpoklady
             | 
        
        
            
                
                
                Předmět Algoritmy I - UAI/686
                
                
                    
                        
                    
                    
                
                
  
             | 
        
        
            | 
                Hodnoticí metody a kritéria
             | 
        
        
            
                
                    
                        Písemná zkouška
                        
                        
                         
                        
                    
                    
                
                 Vypracování seminární práce (vytvoření programu v libovolném programovacím jazyce zahrnující zadaný algoritmus), absolvování písemného závěrečného testu.
                 
             | 
        
    
    | 
        Doporučená literatura
     | 
    
        
            
                
                - 
                    CORMEN, T., H. - LEISERSON, CH., E. - RIVEST, R. R. Introduction to Algorithms. The MIT Press, 1994.. 
                
 
            
                
                - 
                    Mareš, M., Valla, T. PRŮVODCE LABYRINTEM ALGORITMŮ. Praha, 2017. ISBN 78-80-88168-22-5.
                
 
            
                
                - 
                    MCMILLAN, M. Data Structures and Algorithms Using C#. New York: Cambridge University Press, 2007.. 
                
 
            
                
                - 
                    PREISS, B., R. Data Structures and Algorithms with Object-Oriented Design Patterns in Java. John Wiley & Sons, 2000.. 
                
 
            
                
                - 
                    Prokop, J. Algoritmy v jazyku C a C++. Praha: Computer Press, 2015. ISBN 978-80-247-5467-3.
                
 
            
                
                - 
                    SEDGEWICK, R., WAYNE, K.D. Algorithms. Addison-Wesley Professiona, 2015. ISBN 978-0134384689.
                
 
            
                
                - 
                    Wróblewski, P. Algoritmy. Praha: Computer Press, 2015. ISBN 9788025141267.
                
 
            
         
         
         
     |