Theory of Algorithms
Course: Network and internet technologies
Structural unit: Faculty of information Technology
            Title
        
        
            Theory of Algorithms
        
    
            Code
        
        
            ОК 9
        
    
            Module type 
        
        
            Обов’язкова дисципліна для ОП
        
    
            Educational cycle
        
        
            First
        
    
            Year of study when the component is delivered
        
        
            2021/2022
        
    
            Semester/trimester when the component is delivered
        
        
            2 Semester
        
    
            Number of ECTS credits allocated
        
        
            7
        
    
            Learning outcomes
        
        
            To be able to apply obtained knowledge and understanding (of basic facts, rules, concepts and theories related to the exchange of information at a distance, its processing and storage) to solve qualitative and quantitative problems of a similar nature in information and communication networks, telecommunication and radio engineering systems.
Know the main aspects of the use of terminology in the field of telecommunications and radio engineering.
To be able to highlight the main points, to argue, to exercise self-control, to plan professional activities, to organize a workplace.
To be able to explain and reproduce the principles of construction and operation of hardware and software complexes of control and maintenance systems and their application in information and communication networks, telecommunication and radio engineering systems.
        
    
            Form of study
        
        
            Full-time form
        
    
            Prerequisites and co-requisites
        
        
            Be familiar with the concepts of algorithms, types of algorithms, algorithm properties; principles of structural and procedural programming.
Have knowledge of the basics of linear algebra, mathematical analysis, computer logic.
Have basic skills in designing and creating programs for solving applied problems, debugging programs.
        
    
            Course content
        
        
            The subject "Theory of Algorithms" introduces students to the concepts of algorithm analysis and algorithm complexity, considers various types of algorithm complexity, and allows students to acquire the necessary knowledge to perform algorithm analysis in the context of time and space complexity. Considerable attention is paid to various data structures, including dynamic data structures, methods of their organization in computer memory, and algorithms for their processing. Various data processing algorithms are also considered, such as data search, sorting, graph algorithms, etc. The C++ programming language was chosen as a tool for learning algorithms and data structures, which allows students to acquire practical skills in working with a compiled programming language with static typing. During the study of this subject, exceptional attention is paid to algorithms on graphs as the basis for understanding the functioning, analysis and design of networks. This subject also forms students' practical skills in developing various algorithms for solving applied problems using abstract data structures and critical analysis of the developed algorithms.
        
    
            Recommended or required reading and other learning resources/tools
        
        
            1. Vergunova I.M. Construction and analysis of algorithms. Lectures. – Vinnytsia: TVORY, 2020. – 164 p.
2. Koroteeva T.O. Algorithms and data structures: study guide/ T.O. Koroteeva. – Lviv: Publishing House of Lviv Polytechnic, 2014. – 280p.
3. Kostiv O. Data structures: Study guide. - Lviv: Ivan Franko LNU Publishing Center, 2005. - 146p.
4. Krenevych A.P. Algorithms and data structures. – K.: Kyiv University Publishing Center, 2021. – 200 p.
5. Tkachuk V.M. Algorithms and data structure: Study guide / V.M. Tkachuk. - Ivano-Frankivsk: Publishing House of Vasyl Stefanyk Precarpathian National University, 2016.-286 p.
6. Knuth D.E. The art of computer programming: Fundametals algorithms, Volume 1. Third edition. – Addison-Wesley Professional, 1997. – 664 p.
7. Knuth D.E. The art of computer programming: Seminumerical Algorithms, Volume 2. Third edition. – Addison-Wesley Professional, 2014. – 784 p.
        
    
            Planned learning activities and teaching methods
        
        
            Lectures, laboratory work, independent work
        
    
            Assessment methods and criteria
        
        
            The subject integrates various types of work, including independent work. The student has to assert the laboratory works by completing an individual task during the class and demonstrating the result to the teacher. The grade for the work depends on the correctness of the individual task. To monitor students' independent work and motivate their cognitive activity throughout the semester, an ongoing blitz survey or mini test work (current control) is conducted at each lecture and laboratory lesson, during which students' answers are evaluated with appropriate points depending on the difficulty of the question. During the semester, after completing the study of the relevant topics, a control test or a written control work is conducted. 
        
    
            Language of instruction
        
        
            Ukrainian
        
    Lecturers
This discipline is taught by the following teachers
Faculty of information Technology
Departments
The following departments are involved in teaching the above discipline
                        Faculty of information Technology