FEKT-TTINAcad. year: 2018/2019
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. To solve them the stduents can use linear, tree and graph data structures, furthemore they can search in the data structures and used genetic algorithms for search in a search space and optimization.
The fundamentals of programming and communication technology are required.
Recommended optional programme components
Recommended or required reading
Aktuální studijní materiály jsou k dispozici v elearningu na adrese / Study materials are available at : https://www.vutbr.cz/elearning/ (CS)
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)
James Edward Keogh, Ken Davidson, Datové struktury bez předchozích znalostí, Computer Press, 2006 - Počet stran: 223 (CS)
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
Students are evaluated according to their activities in laboratories and by the final exam. The concrete distribution is specified in an yearly published supervisor's notice.
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 algorithms, II.
13. Multithreaded computations, parallelization
14. Final exam
To provide theoretical knowledge of information gathering, processing and sharing in communication systems, and of their structure, behaviour and mutual interaction.
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.