COMPSCI 311: Introduction to Algorithms, Fall 2021


This course will introduce you to algorithms in a variety of areas of interest, such as sorting, searching, string-processing, and graph algorithms. You will learn to study the performance of various algorithms within a formal, mathematical framework. You will also learn how to design very efficient algorithms for many kinds of problems. There will be one or more programming assignments as well to help you relate the empirical performance of an algorithm to theoretical predictions. Mathematical experience (as provided by COMPSCI 250) is required. You should also be able to program in Java, C, or some other closely related language.
Prerequisite: COMPSCI 250 or MATH 455. 4 credits.

Note that the course will have two different sections with two different instructors, textbooks, lectures, discussions, and assignments. Please view the link below that corresponds to section that you have signed up for.

Prof. Daniel Sheldon's Section:

Prof. Ramesh Sitaraman's Section: