Course: Data Structures

« Back
Course title Data Structures
Course code KST/IDATS
Organizational form of instruction Lecture + Tutorial
Level of course Bachelor
Year of study 2
Semester Summer
Number of ECTS credits 5
Language of instruction Czech
Status of course Compulsory
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Kavička Antonín, prof. Ing. Ph.D.
  • Šimerda Karel, Ing.
  • Fikejz Jan, Ing. Ph.D.
Course content
Abstract data types a their specification. Computational complexity of algorithms. Memory management. Set as an abstract data type. Linear data structures: Arrays, Lists, Stacks, Queues. Tree data structures: Unary tree, Binary tree, K-way tree (ordered, unordered). Priority queue and its implementations (using Lists, Binary heaps etc.). Data type Table and its elementary implementations (using Lists, Arrays, Binary search trees, Hashing techniques etc.). Table sorting algorithms (Quicksort, Heapsort, Mergesort, Radixsort etc.). Data type Graph and its basic vertex-oriented and edge-oriented implementations. Organization and principles of block oriented random access files.

Learning activities and teaching methods
Monologic (reading, lecture, briefing), Dialogic (discussion, interview, brainstorming), Skills training
Learning outcomes
The main goal of the course is to familiarize students with the elementary data structures and relevant algorithms as essentials of the efficient programming.
Passing the course enables to manage elementary abstract data types, their applications and efficient implementations, which support creation of high-quality software products.
Prerequisites
There is expected elementary knowledge from the field of algorithmic techniques and object-oriented programming.

Assessment methods and criteria
Oral examination, Written examination, Home assignment evaluation

Given assignment approves that a student attended lessons in a required scale and fulfilled qualified requirements (elaboration of software works focused on implementation of selected data structures and relevant algorithms).
Recommended literature
  • Cenek, Petr. Optimalizace dopravních a spojových procesů. Žilina: Vysoká škola dopravy a spojov, 1994. ISBN 80-7100-197-X.
  • Cormen, T. H. et al. Introduction to algorithms. Boston: MIT Press, 2001. ISBN 0-262-03293-7.
  • Lewis, H. R., Denenberg, L. Data structures and their algorithms. Berkley, Adison-Wesley, 1997. ISBN 978-0673397362.
  • MAREŠ, Martin a Tomáš VALLA. Průvodce labyrintem algoritmů. Praha, 2017. ISBN 978-80-88168-19-5.
  • Volek, Josef. Operační výzkum I. Pardubice: Univerzita Pardubice, 2002. ISBN 80-7194-410-6.
  • Wirth, N.:. Algoritmy a štruktúry údajov, Alfa 1975.
  • WRÓBLEWSKI, Piotr. Algoritmy. Brno, 2015. ISBN 978-80-251-4126-7.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Electrical Engineering and Informatics Study plan (Version): Information Technology (2016) Category: Informatics courses 2 Recommended year of study:2, Recommended semester: Summer
Faculty: Faculty of Electrical Engineering and Informatics Study plan (Version): Information Technology (2014) Category: Informatics courses 2 Recommended year of study:2, Recommended semester: Summer
Faculty: Faculty of Electrical Engineering and Informatics Study plan (Version): Information Technology (2013) Category: Informatics courses 2 Recommended year of study:2, Recommended semester: Summer
Faculty: Faculty of Electrical Engineering and Informatics Study plan (Version): Information Technology (2015) Category: Informatics courses 2 Recommended year of study:2, Recommended semester: Summer