Design and Analysis of Algorithms I (COMP 3804)
Sections A and B
Winter 2023

Instructor: Michiel Smid
Office: Herzberg Building 5125C
E-mail: michiel(
Lectures and tutorials:
Office hours: will start in the week of January 16.
Course objectives: An introduction to the design and analysis of algorithms.
Topics covered include: Divide-and-conquer algorithms and their analysis using recurrence relations, graph algorithms, dynamic programming, the theory of NP-completeness.
Textbook: Algorithms, by Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani, published by McGraw-Hill.
Important dates:
Grading scheme:
Final exam:
Academic Integrity: If you are unsure of the expectations regarding academic integrity (how to use and cite references, if collaboration with lab- or classmates is permitted (and, if so, to what degree), then you must ASK your instructor. Sharing assignment or quiz specifications or posting them online (to sites like Chegg, CourseHero, OneClass, etc.) is ALWAYS considered academic misconduct. You are NEVER permitted to post, share, or upload course materials without explicit permission from your instructor. Academic integrity offences are reported to the office of the Dean of Science. Information, process and penalties for such offences can be found here.
What was done in class: The videos are from previous terms.
Tentative schedule, based on the last time I taught this course.