CSC 225

Algorithms and Data Structures I

Units: 1.5

Hours: 3-1

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.


Undergraduate course in Computer Science offered by the Department of Computer Science in the Faculty of Engineering.

Summer Fall Spring

Note that not all courses are offered in every term. If a course is not offered, the schedule page will alert you that "No classes were found that meet your search criteria."