Instructors:
Adam Dingle (lecture)
Tomáš Bílý, Vít Šefl (tutorials)
This course is a fast-paced introduction to fundamental algorithms, algorithmic complexity, and data structures.
The weekly lecture for this class takes place every Monday from 10:40 - 12:10 in room S5.
There are two tutorial sessions:
every Tuesday from 9:00 – 9:45 in room N11 (teacher: Vít Šefl)
every Thursday from 11:30 – 12:15 in room N11 (teacher: Tomáš Bílý)
Danial Mohebbi will hold a programming mentoring session every Thursday at 15:40 in room N9.
Adam Dingle will hold office hours every Friday from 13:00 - 14:00 at his office (room 405), starting on Friday, October 9.
This course includes both a pass/fail credit and a graded final exam.
To receive the credit, you must fulfill the following requirements by Friday, February 12, 2027 at the end of the exam period:
Complete a series of homework assignments through the semester. The tutorial teachers will assign these exercises weekly, and you can submit your solutions to the ReCodEx automated grading system. You must earn at least 70% of the total possible points.
Regularly attend the lectures and tutorials and participate in class.
You must complete the credit before you can enroll for the exam.
You may not use ChatGPT, Copilot or other AI tools to generate any code or documentation that you submit in any homework assignment in this course. Any use of such tools is considered cheating and may disqualify you from passing the class.
Bradley Miller et al, Problem Solving with Algorithms and Data Structures Using Python, Second Edition (Franklin, Beedle & Associates, 2011)
Thomas Cormen et al, Introduction to Algorithms, Fourth Edition (MIT Press, 2022)
The Miller text is available online (see the link above). There are many copies of the Cormen text in the MFF library on the first floor.
This is a rough map of the ground we plan to cover in this class. (It will probably evolve as the semester goes on.)