About CS 3240 A

Comprehensive study of algorithms including greedy algorithms, divide and conquer, dynamic programming, graph algorithms and network flow. Computational intractability. Approximation, local search and randomization. Prerequisite: CS 2240. Pre/co-requisites: Recommended: CS 2250; STAT 2430, or STAT 2510.


Prereqs enforced by the system: CS 2240; Colocated with CS 5990 A

Section Description

We will study broad classes of algorithms including greedy algorithms, divide-and-tackle algorithms, dynamic programming, and network-flow algorithms. Students will learn how to characterize the complexity of algorithms. We will discuss NP and NP completeness and advanced algorithm design methods for hard problems, such as approximation. Students will do written assignments involving proofs and the tracing of algorithms and programming assignments that implement some of the algorithms presented in class. The required text is Algorithm Design by Kleinberg and Tardos (ISBN-10: 0321295358).

Section Expectation

There will be two exams, written assignments, and programming assignments (in Java).


Final grades will be assigned based on written and programming assignments, the exams, and course attendance.

Important Dates

Note: These dates may change before registration begins.

Note: These dates may not be accurate for select courses during the Summer Session.

Last Day to Add
Last Day to Drop
Last Day to Withdraw with 50% Refund
Last Day to Withdraw with 25% Refund
Last Day to Withdraw


There are no courses that meet this criteria.

Interest Form

CS 3240 A is closed to new enrollment.

But we can remind you a few days before the next term opens. You can also see what terms are enrolling currently.