Computer Science (CSC) Courses>Algorithms and Data Structures I

CSC225 - Algorithms and Data Structures I

Description

Basic techniques for design, analysis, implementation of algorithms and data structures. Foundations: Random access machine model, time and space complexity, worst-case analysis, upper and lower bounds. Proof techniques for algorithm correctness. Basic data structures: stacks, queues, linked lists. Sorting: elementary sorting algorithms, mergesort, quicksort, priority queues. Searching: Binary search trees, balanced search trees, hash tables. Graphs: undirected and directed graphs, graph traversals and applications, topological sort. Algorithm design techniques: greedy, backtracking, divide and conquer.

Units

1.5

Hours: lecture-lab-tutorial

3-1-0

Prerequisites

  • Complete all of the following
    • Complete 1 of:
      • CSC115 - Fundamentals of Programming II (1.5)
      • CSC116 - Fundamentals of Programming with Engineering Applications II (1.5)
    • Complete all of:
      • MATH122 - Logic and Foundations (1.5)

Course offered by

Department of Computer Science

Course schedules

Summer timetable available: February 15. Fall and Spring timetables available: May 15.

Use the buttons below to search the timetable. If the search results show 0 classes and the message ‘Please search again’, then the class is not scheduled for the selected term.