COMP 251. Algorithms and Data Structures.
Note: For information about Fall 2025 and Winter 2026 course offerings, please check back on May 8, 2025. Until then, the "Terms offered" field will appear blank for most courses while the class schedule is being finalized.
COMP 251
Algorithms and Data Structures.
Credits: 3
Offered by: Computer Science (Faculty of Science)
This course is not offered this catalogue year.
Description
Data Structures: priority queues, balanced binary search trees, hash tables, graphs. Algorithms: topological sort, connected components, shortest paths, minimum spanning trees, bipartite matching, network flows. Algorithm design: greedy, divide and conquer, dynamic programming, randomization. Mathematicaltools: proofs of asymptotic complexity and program correctness, Master theorem.
- Restrictions: Not open to students who have taken or are taking COMP 252.
- Restrictions: Not open to students who have taken or are taking COMP 252.
- 3 hours
- Prerequisites: COMP 250; MATH 235 or MATH 240
- COMP 251 uses basic counting techniques (permutations and combinations) that are covered in MATH 240 but not in MATH 235. These techniques will be reviewed for the benefit of MATH 235 students.
- Restrictions: Not open to students who have taken or are taking: COMP 252 or COMP 260.
Most students use Visual Schedule Builder (VSB) to organize their schedules. VSB helps you plan class schedules, travel time, and more.
Launch Visual Schedule Builder