CS 252. Algorithms A course on techniques used in the design and analysis of efficient algorithms. We will cover several major algorithmic design paradigms (greedy algorithms, dynamic programming, divide and conquer, and network flow). Along the way, we will explore the application of these techniques to a variety of domains (natural language processing, economics, computational biology, and data mining, for example). As time permits, we will include supplementary topics like randomized algorithms, advanced data structures, and amortized analysis. Prerequisite: Computer Science 201 and either Computer Science 202 or Mathematics 236. 6 cr., FSR, Fall,WinterJ. Ondich, Staff

Carleton College Academic Catalog 2016