Data Structures I, practicals (NTIN066)

Tuesday 9:00

Practicals are taught by Ondřej Mička and follow up Petr Gregor's Monday lecture.

How to get the credit and how the practicals work

To get the credit you need at least 80 points from homework assignments. There will be at least 12 assignments, 10 points each. Presence at the practicals is not mandatory, practicals basically work as consultation sessions. But it is highly recommended to attend the first session where the rules and system is thoroughly explained. Usually, new assignment will be present together with solution of the previous one. Rest of the tutorial is Q&A session -- we discuss questions and issues concerning the lecture, assignments etc. For example, you may work on the assignment during the practicals so you can immediately consult any problems you encounter with the instructor.

Do not be afraid to ask questions! (either during the practicals or via e-mail). In the worst case, you just learn nothing new :-).


All assignments are submitted using ReCodEx system (event the experimental ones). Please join the ReCodEx group corresponding to these practicals. Instructor's feedback to your solutions will also be in ReCodEx (can be useful to set up mail notifications). Materials for assignments (source codes etc.) will be published to the git repository.

The rules are here. Read the rules very carefully and consult the instructor if anything is not clear! Not knowing the rules is no excuse if you accidentally break them.

Few suggestions:

If you get stuck you can try:

Language intermezzo

Implementation assignments can be submitted either in Python 3 or in C++17. More detailed parameters, such as compiler options, can be found in ReCodEx. If you do not know C++ but you know C, do not despair! It is recommended to use C++ as if it was plain old C (perhaps with exception of C++ vectors), so you can ignore most of the features the C++ has.

If you know neither C++ nor Python there are references to documentation and some tutorials below. And, as always, you can ask the instructor.

If you are unsure which language to choose I personally would recommend Python. I consider it to be more beginner-friendly and perhaps more useful in general. Either way, I would definitely recommend using the language you feel comfortable with.