Course Description
Systematic study of basic concepts and techniques in the design and analysis of algorithms, illustrated from various problem areas. Topics include: models of computation; choice of data structures; graph-theoretic, algebraic, and text processing algorithms.
Average difficulty
Average quality
One of the more difficult course in CPSC as it delves into challenging abstract topics. Assignments will take a large portion of your time. Though challenging, it is an important course that can help leapfrog your leetcode skills to be more competitive for internships.
Difficulty: | 5 | |
Quality: | 4.5 |
Took this with Patrice Belleville. Extremely difficult course, but the course was ran well. Assignments were very tough, I needed to go to office hours and consult with peers very often for understanding of concepts. Prof was understanding and fair. Start assignments early and go to lectures & office hours, assignments can take up a significant portion of time to understand and office hours are often quite packed. Concepts taught in the course are very useful for industry and leetcode.
Difficulty: | 5 | |
Quality: | 4.5 |
Very useful code to get you a job in the industry. Helps you in almost all Data Structure and Algorithm questions. Please start your assignments on time.
Difficulty: | 4.5 | |
Quality: | 5 |
Strikingly similar to CPSC 121 in terms of course structure, but on more advanced topics (e.g., DP, greedy, etc.). Course was well ran and assignments were challenging, but fair.
Difficulty: | 4 | |
Quality: | 4.5 |
Pain. Gives you the ability to slay leet codes. One of the most difficult cs courses at ubc
Difficulty: | 5 | |
Quality: | 4 |