Course detail

Data Structures and Algorithms

FEKT-MPC-PDAAcad. year: 2020/2021

Complexity theory, graph theory, graph equivalence, queuing theory, Petri nets, simulation and modeling, Markov models, advanced evolutionary algorithms.

Learning outcomes of the course unit

Alumni know complexity theory, representative examples and are able to apply graph theory, queue theory, theory of Petri nets and Markov models to solve the selected examples.


The subject knowledge on the heoretical informatics, t Bachelor degree and courlevel is required.


Not applicable.

Recommended optional programme components

Not applicable.

Recommended or required reading

Virius, Miroslav. Základy algoritmizace. Česká technika-nakladatelství ČVUT, 2008. (CS)
GOODFELLOW, I., BENGIO, Y., & COURVILLEe, A. (2016). Deep learning (adaptive computation and machine learning series). Adaptive Computation and Machine Learning series, 800. (EN)

Planned learning activities and teaching methods

Teachning 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

final examination

Language of instruction


Work placements

Not applicable.

Course curriculum

1. Information representation, introduction
2. Complexity theory, selected examples of complexity
3. Graph theory, analysis, factorization
4. Theory of graphs, groups, availability, bipartite
5. Graphs equivalence
6. Information representation - machine learning
7. Information representation - network types
8. Information representation - linear regression
9. Information representation - logistic regression, classification
10. Information representation - optimization
11. Reprezentace informace - dopředná neuronová síť
12, Evolutionary Algorithms
13. Multithreaded computing, parallelization


Objective of this course is to provide information about complexity theeory, graph theory and their comparison, queuing theory, Petri nets, evolution algorithms.

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.

Type of course unit



26 hours, optionally

Teacher / Lecturer

Exercise in computer lab

26 hours, compulsory

Teacher / Lecturer