COMP-251: Algorithms and Data Structures
School of Computer Science
Note: Please see MyCourses for course materials, assignment submission, and announcements.
Monday, Wednesday: 13:05 - 14:25
Please consult Minerva for
the most up-to-date scheduling & classroom location information.
Office: McConnell, room 230
Office hours: Monday & Wednesday 14:30-15:30, Friday 11:00-12:00, or by appointment.
Phone: 514-398-2411but don't call me, use email
Simon Brisson: Tuesdays and Thursdays 12:00-1:00 in McConnell 226
Zhen Cao: Wednesdays and Thursdays 3:30-4:30 in McConnell 234A
Bentley Oakes: Tuesdays and Thursdays 1:00-2:30 in McConnell 231
Liana Yepremyan: Mondays 4:00-5:00, and Wednesdays 11:00-12:00, in McConnell 303
COMP 250 (Introduction to Computer Science) or COMP 203.
Not open to students who have taken or are taking COMP 252.
MATH 240 (Discrete Structures 1) is strongly recommended.
Note: students registering without the pre-requisites may find the
course removed from their transcript by their Faculty. If you do not
have the official pre-requisites please see the instructor.
Reference material is available in the following texts:
Design and analysis of algorithms. Complexity of algorithms. Data
structures. Introduction to graph algorithms and their analysis.
A detailed syllabus is available here.
5 Assignments: 30%
- Jon Kleinberg and Éva Tardos. Algorithm Design.
This is the main, required text for the course. It is available at the bookstore and on reserve in the Schülich library.
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein.
Introduction to Algorithms. (Any edition)
This supplemental text is a more comprehensive reference.
It is available free electronically (from a McGill machine or via VPN) from
A supplemental exam (70%) will be held if required.
In accord with McGill University's Charter of Students' Rights, students in this course have the right to submit in English or
in French any written work that is to be graded.
Assignments are posted in MyCourses. For convenience, assignment descriptions are also replicated here.
Assignment and Exam Policy
Assignments must be submitted on time. Late assignments will only be
accepted in highly-exceptional circumstances and only with
written permission of the instructor. No assignment submissions will
be accepted after marked assignments have been returned, or after
solutions have been discussed in class.
McGill University values academic integrity. Therefore all
students must understand the meaning and consequences of cheating,
plagiarism and other academic offenses under the Code of Student
Conduct and Disciplinary Procedures (see
http://www.mcgill.ca/integrity for more information).
More specifically, work submitted for this course must represent your own
efforts. Copying assignments or tests, or allowing others to copy
your work, will not be tolerated. Note that introducing syntactic
changes into a copied program is still considered plagiarism.