CPSC 2070
Algorithms and Data Structures I
https://ufred.ca/courses/cpsc-2070/
Course description
This second-year course introduces the core ideas behind efficient algorithms and data structures. Students learn how different ways of representing data affect speed, memory use, and overall program design. The course covers fundamental data structures, including arrays, linked lists, stacks, queues, hash tables, heaps, trees, and graphs. It also introduces standard algorithmic techniques through searching, sorting, traversal, and selected graph algorithms. Throughout the course, students practice analyzing performance using asymptotic notation and apply these ideas to make informed implementation choices. This course emphasizes correctness, tradeoffs, and evidence-based reasoning, supported by hands-on programming work and targeted evaluation. By the end of the course, students will be able to select and implement appropriate structures and algorithms for a given problem and explain the reasoning behind those choices in precise, technical terms
Explore programs with this course
Credits and course categories are specific to each program.
- TechnologyView Program
Bachelor of Computer Science
Our computer science program helps you build real-world technical expertise and the problem-solving mindset that employers value.
- Year 2 courses — 3 credits
Start your journey with UFred
We make it simple to take the next step in your education. Our Program Advisors are happy to help you apply. Begin whenever works best for you.

