[CSCI 315] Algorithm Design and Analysis
The major classes of algorithms used across the diverse areas of computer science, including graph algorithms, pattern matching, graphical algorithms, parallel algorithms, encryption, and compression. General approaches to the design of algorithms, including divide-and-conquer, backtracking, dynamic programming, and transformation of problems. Further techniques for the analysis of the efficiency of algorithms. An introduction to the abstract classes of problems: P [solvable], NP and NP-Complete [solvable but intractable], and unsolvable problems.
Algorithm Design and Analysis
Prerequisite: Computer Science 204 and Mathematics 160.
Offered in odd years, spring semester.