Back to my homepage
### Syllabus (Approx):

** Section I:** Divide & Conquer, sorting, order statistics, Fast Fourier Transform,
randomized sorting and selection.

** Section II:**
Dynamic programming: edit distance and other examples. Greedy algorithms: Minimum change, Huffman codes, and other examples.

** Section III:**
Graph algorithms: DFS, topological sorting, shortest path algorithms, maximum flow.

2. Online lecture notes by Jeff Erickson

3. Algorithms by Dasgupta, Papadimitrou and Vazirani

4. Algorithm Design: Kleinberg and Tardos

5. The Algorithm Design Manual by Steven Skiena

Exam 1: 20%, Exam 2: 20%, Exam 3: 20%