FEKT-NTINAcad. year: 2019/2020
Object oriented design. Abstract datat types, theoretical models, directed and undirected graphs, graph representation methods. Deterministic and nondeterministic automata. Data structures and objects. Spanning tree, shortest paths in graphs, Parallel and sequential algorithms. Distributed algorithms. Optimization, genetic algorithms.
Learning outcomes of the course unit
Students have skills of design and implementation of various forms of abstract data types and its application to solve specific problems: linear, tree and graph data structures, search in the data structures, genetic algorithms.
The subject knowledge on the Bachelor´s degree level is requested.
Recommended optional programme components
Recommended or required reading
Leuwen, J., Watanabe, O., Hagiya, M.: Exploring New Frontiers of Theoretical Informatics. Springer, 2000. (EN)
Goodrich, T.M., Tamassia, R.: Data Structures and Algorithms in Java. John Wiley & Sons, 2000. (EN)
Battista, G., Tollis, I.: Graph Drawing: Algorithms for the Visualization of Graphs. Prentice Hall, 1998. (EN)
Planned learning activities and teaching methods
Techning methods include lectures, computer laboratories and practical laboratories. Course is taking advantage of e-learning (Moodle) system. Students have to write a single project/assignment during the course.
Assesment methods and criteria linked to learning outcomes
Language of instruction
1. Information representation, objective oriented design
2. Information representation, introduction to data structures
3. Complexity, computability and automata theory
4. Information representation, linear data structures and sorting
5. Information representation - tree data structures
6. Information representation - graph theory
7. Information acccess - spanning tree
8. Information acccess - graph search
9. Information acccess - data mining
10. Information acccess - decision trees
11. Information acccess - genetic algorithms
12. Information acccess - genetic programming
13. Multithreaded computations, parallelization
14. Final exam
To provide theoretical knowledge of information gathering, processing and sharing in communication systems, and of its structure, behaviour and mutual interactions.
Specification of controlled education, way of implementation and compensation for absences
The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year.