Office hours: Held at the times and locations indicated in the table below. Vassos's office hours start on Week 1; TAs' office hours start on Week 2.
| Day | Time | Place | Person |
| TBA |
TBA | TBA | TBA |
| TBA |
TBA | TBA | TBA |
| TBA |
TBA | TBA | TBA |
Course web page: http://www.cs.toronto.edu/~vassos/teaching/c73/
Course forum page: https://piazza.com/utoronto.ca/fall2026/cscc73h3flec01/home
Lecture times and locations: LEC01 Mon 11-12 (SW 319) and Wed 9-11am (IA 2150)
Tutorial times and locations: TUT01 Fri 1-2 (HW 214), TUT02 Fri 2-3 (HW 214).
Prerequisites: CSCB63, STAB52, and enrollment in a computer science subject POSt (or CGPA of 3.5 or higher).
Textbooks:
Tentative weekly schedule (check regularly as it may change):
|
Week |
Lecture topics |
Study materials | Tutorials
|
Assignments
& tests |
| 1 (Sep 6) |
Greedy algorithms Mon: Labour Day (no class) Wed: Course overview and logistics. Interval scheduling |
Course Notes §1.1 |
No tutorial this week | Wed: A1 posted; advice on presenting algorithms and proofs |
| 2 (Sep 13) | Greedy algorithms, cont'd Mon: Minimum lateness scheduling Wed: Fractional knapsack; Huffman codes |
Course Notes §1.2 Course Notes §1.3-1.4 |
Practice with greedy algorithms | |
| 3 (Sep 20) |
Divide & conquer (D&C) algorithms Mon: The ``master theorem'', Karatsuba's integer multiplication; Strassen's matrix multiplication Wed: Order statistics |
Course Notes §2.1-2.4 Course Notes §2.6 |
Practice with D&C algorithms |
Wed: A1 due, A2 posted |
| 4 (Sep 27) |
D&C, cont'd; dynamic programming (DP) Mon: Closest pair of points Optional material: Fast Fourier Transform Wed: Longest increasing subsequence; weighted interval scheduling |
Course Notes §2.5 Course Notes §2.7 Course Notes §3.1-3.2 |
Practice with DP algorithms | Wed: A2 due, A3 posted |
| 5 (Oct 4) |
DP, cont'd Mon: Edit distance Wed: 0/1 knapsack; optimal binary search trees; DP & recursion, memoisation |
Course Notes §3.3 Course Notes §3.4-3.6 |
Practice with DP algorithms | |
| 6 (Oct 11) |
Shortest paths algorithms Mon: Thanksgiving (no class) Wed: Dijkstra's algorithm (single-source shortest paths) |
Course Notes §4.1-4.2 |
TBA |
Wed: A3 due, A4 posted |
| 7 (Oct 18) |
Shortest paths algorithms, cont'd Mon: Bellman-Ford algorithm (single-source shortest paths) Wed: Floyd-Warshall and Johnson's algorithms (all-pairs shortest paths) |
Course Notes §4.3 Course Notes §4.4-4.5 |
Practice with shortest paths algorithms |
|
| (Oct 25) | Reading Week (no classes, tutorials, or office hours) | |||
| 8 (Nov 1) |
Maximum flow & applications Mon: Max flow problem, Ford-Fulkerson algorithm Wed: Running time and correctness of Ford-Fulkerson algorithm, max-flow min-cut theorem |
Course Notes §5.1-5.2 Course Notes §5.3 |
TBA | Wed: A4 due, A5 posted |
| 9 (Nov 8) |
Maximum flow & applications, cont'd Mon: Bipartite graph matching Wed: Bipartite graph vertex cover; Hall's theorem; disjoint paths in directed and undirected graphs |
Course Notes §5.4 Course Notes §5.5-5.7 |
TBA | |
| 10 (Nov 15) |
Linear Programming (LP) Mon: Motivation, examples, the geometry of LP Wed: LP algorithms, reductions to LP; integer LP (ILP), reductions to ILP |
Course Notes §6.1-6.2 Course Notes §6.3-6.5 |
TBA | Wed: A5 due, A6 posted |
| 11 (Nov 22) |
Approximation algorithms Mon: Approximate vertex cover Wed: Approximate set cover; minimum makespan |
Course Notes §7.1-7.2 Course Notes §7.3-7.4 |
TBA
|
|
| 12 (Nov 29) |
Approximation algorithms, cont'd Mon: Approximate k-centre Wed: PTAS for 0/1 knapsack; maximum cut (local search); approximate metric traveling salesman problem |
Course Notes §7.5 Course Notes §7.6-7.7 |
No tutorial this week |
Wed: A6 due |
| 12+ (Dec 6) |
Mon (makeup for Labour Day): Additional or overflow material
Tue (makeup for Thanksgiving): Additional or overflow material |
No tutorial this week | ||
Academic integrity: Academic integrity is essential to the University of Toronto and so the University treats cases of cheating and plagiarism very seriously. Academic offences relevant to this course include using someone else's ideas or words without appropriate attribution; obtaining or providing unauthorized assistance on any assignment, test, or exam; misrepresenting your identity; and falsifying or altering documentation.
Accessiblity: If you have a disability or health condition that may require accommodation, please consult with AccessAbility Services (IA5105, 416-287-7560, ability.utsc@utoronto.ca) as soon as possible. Enquiries to AccessAbility Services are confidential. Their staff will help assess needs and, if appropriate, will provide referrals and arrange accommodations.
Evaluation: There will be up to six equally-weighted homework assignments worth in total 30% of the course mark, a midterm test worth 25% of the course mark, and a final exam worth 45% of the course mark. A mark of at least 40% on the final exam is required to pass the course.
Homework grading: For each homework assignment we may grade only a selected (but not pre-announced) proper subset of the questions or parts thereof. In that event, the homework assignment will be graded out of the total weight of the graded part of the assignment.
Late homework policy: No late homeworks will be accepted. If you miss a homework deadline because of a medical or personal exigency, you must fill out, in plain text, and email the course instructor the Special Consideration Form as soon as possible. If the reason for missing the deadline is acceptable, the weight of the missed homework will be shifted to other components of your grade.
Homework collaboration policy: In each homework assignment you may collaborate with at most one other student who is currently taking CSCC73. If you collaborate with another student on an assignment, you and your partner must submit a single of your solution, as a group. The solution will be graded in the usual way and both partners will receive the same grade. Collaboration involving more than two students is not allowed. For help with your homework you may consult only the instructor, TAs, your homework assignment partner (if you have one), the CSCC73 Course Notes, and your personal class notes. You may not consult any other source, including AI-based tools (see AI policy below).
Regrading policy: To submit a regrading request for an assignment or the midterm test you must fill out, in plain text, this form and email it to the course instructor no later than one week from the date the graded assignment or test was made available to the class. (This period may be shorter for the last assignment, to ensure timely delivery of course grades.) Regrading requests made after the deadline will not be accepted. As a result of a regrading request your grade in the assignment may increase, remain unchanged, or decrease.
Regrading requests consume a large amount of the instructor's and TAs' time, both of which are in short supply. Before making a regrading request, you must read and understand the provided solutions and think carefully about your own solution. To discourage frivolous regrading requests we will apply the following rule: A regrading request that does not result in increasing the grade of the submitted assignment causes a "demerit'' to each of the student(s) who submitted the assignment in question. We will not consider regrading requests for an assignment submitted by a student who has accumulated two such demerits.
Missed midterm test policy: If you miss the midterm test due to a medical or personal exigency, get in touch with your instructor immediately, and fill out the Special Consideration Form. There will be no make-up test, but if the reason for missing the test is acceptable, the weight of the missed midterm test will be shifted to the final examination.
AI policy: You may use AI tools in this course in any way you wish, with the following two exceptions: