CS 161 Design and Analysis of Algorithms Spring 2001 |
Course Syllabus |
This is a tentative syllabus and is subject to change.
Date | Topic |
Lecture 1 Tuesday, 03-Apr-01 | Introduction |
Readings: CLR 1 | |
Lecture 2 Thursday 5 Apr-01 | Asymptotics, merge sort as recursive algorithm |
Readings: CLR 2 | |
Lecture 3 Tuesday 10-Apr-01 | Recurrencies I |
Readings: CLR 3, 4 | |
Lecture 4 Thursday 12-Apr-01 | Recurrencies II |
Readings: CLR 3, 4 | |
Lecture 5 Tuesday 17-Apr-01 | Quicksort |
Readings: CLR 8 | |
Lecture 6 Thursday 19-Apr-01 | Order Statistics |
Readings: CLR 10 | |
Lecture 7 Tuesday 24-Apr-01 | Heaps |
Readings: CLR 7 | |
Lecture 8 Thursday 26-Apr-01 | Amortized Analysis, Counting Sort |
Reading: CLR 9 | |
Lecture 9 Tuesday 1-May-01 | Hashing I |
Reading: CLR 12 | |
Lecture 10 Thursday 3-May-01 | Hashing II |
Lecture 11 Tuesday 8-May-01 | Binary Search trees |
Reading: CLR 13 | |
Lecture 12 Thursday 10-May-01 | MIDTERM |
Lecture 13 Tuesday 15-May-01 | Red/Black Trees |
Reading: CLR 14 | |
Lecture 14 Thursday 17-May-01 | Augmenting data structures |
Reading: CLR 15 | |
Lecture 15 Tuesday 22-May-01 | Greedy Algorithms |
Reading: CLR 17.1 - 17.2 | |
Lecture 16 Thursday 24-May-01 | Huffman Encoding, Minimum Spanning Tree I |
Reading: CLR 17.3, 24 | |
Lecture 17 Tuesday 29-May-01 | Minimum Spanning Tree II |
Lecture 18 Thursday 31-May-01 | Dynamic Programming, Bellman-Ford algorithm |
Reading: 16.1, 16.2, 25.1, 25.3 | |
Lecture 19 Tuesday 5-Jun-01 | More dynamic programming: matrix multiplication, longest common subsequence |
Reading: CLR 16.3 |