Description
The course serves as an introduction to the design and anlysis of
computer algorithms. The course focuses on techniques for
constructing correct and efficient algorithms, and the tools to
reason about them. Design paradigms covered include
divide-and-conquer, dynamic programming, and greedy algorithms.
Material will also include major algorithms and data structures for
searching and sorting, graphs, optimization techniques and
computational intractability. Prerequisite: COM202 and COM/MAT306.
(3 s.h.)