~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From the Academic Catalog: 301: Algorithms (4 credits) Study of structures used to organize data and of the algorithms used to manipulate these structures. Assignments to implement data structures and to use them in computer science and other applications programs. Emphasis on mathematical principles behind the data structures. Prerequisites: Computer Science 152 or 153 and Mathematics 218. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From the instructor: In my opinion, there is a slight mismatch between the title of this course and its course description. In the Fall 2006 rendition of the course we will do service to both. We will study data structures and the algorithms that operate on them in the first few weeks, and then we will study algorithms in a broader sense for the remainder of the course. We will explore various algorithmic design techniques through the study of canonical problems and the algorithms used to solve them. Some of these algorithms will rely on the data structures we developed earlier in the term.