Computer Science 312 - Algorithms

Algorithms

Fall
2020
01
4.00
Daniel Sheldon
M 07:00PM-08:15PM;TTH 07:00PM-08:00PM;WF 07:00PM-08:45PM
Mount Holyoke College
111997
dsheldon@mtholyoke.edu
How does Mapquest find the best route between two locations? How do computers help to decode the human genome? At the heart of these and other complex computer applications are nontrivial algorithms. While algorithms must be specialized to an application, there are some standard ways of approaching algorithmic problems that tend to be useful in many applications. Among other topics, we will explore graph algorithms, greedy algorithms, divide-and-conquer, dynamic programming, and network flow. We will learn to recognize when to apply each of these strategies as well as to evaluate the expected runtime costs of the algorithms we design.
Prereq: COMSC-201 or COMSC-205 or COMSC-205PY; MATH-232.
Permission is required for interchange registration during the add/drop period only.