Algorithms Analysis and Data Structures (CSTP 1305)

Students learn the fundamentals of algorithm design and analysis through hands-on practice with various popular algorithms and data structures used in software development. Students learn how to analyze the time and space complexity of an algorithm and learn how to test and choose the right solution for a non-trivial programming problem.

The emphasis is on developing practical skills as well as the conceptual mastery of efficient algorithm selection. Important data structures covered in this course include: arrays and vectors, and trees and graphs. Popular algorithms and design strategies covered include: Recursion vs Iteration, Divide and Conquer, Greedy Techniques and basic sorting algorithms. This language of choice for this course is modern C++ or Java.
Course code: CSTP 1305
Credits: 3.0
Length: 60.0 hours
Course outline: view https://www.vcc.ca/vccphp/courseoutline?subject=CSTP&number=1305

Prerequisites

CSTP 1205.

Corequisites

CSTP 1204.

Schedule

CSTP 1305 schedule for programs:

Course dates and times may vary throughout the term. Select the CRN number below to see a full schedule.
CRN # Dates Day/Time/Location
60084May 3, 2025
to August 9, 2025
  See full schedule
  Delivery: In Person
  Location: VCC Downtown Campus
70034September 3, 2025
to December 13, 2025
  See full schedule
  Delivery: In Person
  Location: VCC Downtown Campus

Additional Information

  • The fundamentals of algorithm analysis
  • Vectors and Arrays
  • Iteration vs Recursion
  • Common Sorting algorithms
  • Time and space lower bound complexity
  • Divide and Conquer vs greedy algorithms
  • Binary Trees, Balanced Trees
  • Tree traversal algorithms

This course is offered as part of a VCC program only.

Ask a question


  • Step 1undefined
  • Step 2undefined