Instructor: Adam Dingle
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 14:00 - 15:30 in room S11. The first lecture will be on Monday, October 7.
There is also a semi-weekly tutorial ("cvičení") every second Wednesday from 14:00 – 15:30 in room S10. In the tutorial sessions we will solve various exercises together. The first tutorial will be on Wednesday, October 2.
This course includes both a pass/fail credit and a graded final exam.
To receive the credit, you must fulfill the following requirements:
Complete a number of homework assignments through the semester. You must earn at least 70% of the total possible points. Any points that you earn over 85% (up to a maximum of 15%) will be applied as bonus points to your exam score when you take the exam.
Regularly attend the lectures and tutorials and participate in class.
You must complete the credit before you can enroll for the exam. The final exam includes both a written part and an oral part. The grade for the exam is based on both parts.
Two teachers (Martin Koutecký and Vašek Končický) will lead mentoring sessions in computer science and math on Thursdays from 15:40 - 18:50 in room S510 on the fifth floor.
Feel free to stop by my office hours (Fridays from 13:00 - 14:30 in room 405).
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, Third Edition (MIT Press, 2009)
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: