SubjectsSubjects(version: 845)
Course, academic year 2018/2019
   Login via CAS
Implementation of Data Structures - NTIN106
Title in English: Implementace datových struktur
Guaranteed by: Department of Theoretical Computer Science and Mathematical Logic (32-KTIML)
Faculty: Faculty of Mathematics and Physics
Actual: from 2018 to 2018
Semester: winter
E-Credits: 3
Hours per week, examination: winter s.:0/2 C [hours/week]
Capacity: unlimited
Min. number of students: unlimited
State of the course: taught
Language: Czech
Teaching methods: full-time
Additional information: http://ktiml.mff.cuni.cz/~fink/teaching/implementation/
Guarantor: RNDr. Jiří Fink, Ph.D.
Class: Informatika Mgr. - Teoretická informatika
Classification: Informatics > Informatics, Software Applications, Computer Graphics and Geometry, Database Systems, Didactics of Informatics, Discrete Mathematics, External Subjects, General Subjects, Computer and Formal Linguistics, Optimalization, Programming, Software Engineering, Theoretical Computer Science
Annotation -
Last update: RNDr. Jan Hric (11.05.2018)
Design of implementation of data structures and analysis of boundary conditions. Application Programming Interface to data structures and algorithms. Unit testing and debugging. Code review. Low-level programming and memory management in C/C++. Parallel programming, top-down implementation of (a,b)-trees and red-black trees.
Aim of the course -
Last update: RNDr. Jan Hric (11.05.2018)

The course teaches students advanced methods to efficiently implement data structures and algorithms presented in the course Data Structures I (NTIN066). Students learn to read, analyze and improve source codes of other participants.

Course completion requirements -
Last update: RNDr. Jan Hric (11.05.2018)

Credit is given for code reviews of source codes of other participants.

Literature -
Last update: RNDr. Jiří Fink, Ph.D. (13.09.2018)

I. Zhirko: Low-level programming. New York: Apress, 2017.

V. H. Patil: Data structures using C++. 5th edition, Oxford university press India, 2018.

E. Horowitz, S. Sahni, D. Mehta: Fundamentals of data structures in C++. New York: Computer Science Press, 2001.

L. Ammeraal: Algorithms and data structures in C++. Chichester: Wiley, 1997.

A. Williams: C++ Concurrency in Action. Manning Publications, 2012.

Syllabus -
Last update: RNDr. Jan Hric (11.05.2018)

Design of implementation of data structures and analysis of boundary conditions.

Application Programming Interface to data structures and algorithms.

Unit testing and debugging.

Code review.

Low-level programming and memory management in C/C++.

Parallel programming, top-down implementation of (a,b)-trees and red-black trees.

Entry requirements -
Last update: RNDr. Jan Hric (11.05.2018)
  • Students are expected to understand algorithms and data structures from bachelor study (mainly courses Algorithms and Data Structures I and II).
  • Experience with programming in one of following languages: C, C++, Java, C#, Python.
  • Knowledge of computer architecture.
  • It is recommended to enroll this course together with Data Structures I (NTIN066).

 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html