Lecture Schedule

# Date Topics Covered References
0 Aug 6 Organizational meeting  
    Basic Data Structures  
1 Aug 11 Binary Min-Heap Weiss: 6.1-6.3
2 Aug 13 Binary Min-Heap (contd.)
Application: Least k problem
Weiss: 6.1-6.3
Weiss: 6.4.1
3 Aug 18 Binary Search Tree Weiss: 4.3
4 Aug 20 Binary Search Tree - Height analysis
AVL-Trees
Weiss: 4.3, 4.4
5 Aug 25 AVL-Trees - Insert using Rotations Weiss: 4.4
    Divide and Conquer Algorithms  
6 Aug 27 QuickSort
Linear time Order Statistics
Weiss: 7.7 , 10.2.3
7 Sept 1 MergeSort
Counting Inversions
KT: 5.1, 5.3
    Dynamic Programming  
8 Sept 3 Fibonacci Numbers
Matrix chain Multiplication
Weiss 10.3.1,10.3.2
9 Sept 8 Principles of Dynamic Programming
Single source : Bellman-Ford
KT 6.1, 6.2
Lecture Notes
10 Sept 10 Knapsack problem KT 6.4
11 Sept 15 Weighted Interval Scheduling
Overview of greedy algorithms
KT 6.1
  Sept 22 MIDTERM EXAM  
    Lower bounds and NP-comleteness  
12 Sept 24 Comparison based Lower bounds
Lower bounds using adversary arguments
Lower bounds using reduction
Michiel Smid lecture notes (Section 1.1)
Jeffe Erickson lecture notes
David Mount lecture notes (Lecture 4, Page 17)
13 Sept 29 On P, NP and reductions KT 8.1
14 Oct 1 On P, NP and NP-complete Avrim Blum's lecture, KT 8.4
15 Oct 6 NP-completeness Avrim Blum's lecture, KT 8.1-8.4
    Advanced Data Structures  
16 Oct 8 Kruskal Algo. for MST
Union Find data structure
KT 4.5
KT 4.6, Weiss 8.3-8.5
17 Oct 13 Orthogonal range Searching: 1D range search, kd-tree David Mount lecture notes (Lecture 32, Page 155)
18 Oct 15 Orthogonal range Searching: kd-tree, Range tree David Mount lecture notes (Lecture 32 and 33, Page 155, 161)
19 Oct 20 Higher dimensional range Searching David Mount lecture notes (Lecture 33, Pg 161)
20 Oct 22 Interval Tree David Mount lecture notes (Lecture 34, Pg 165)
21 Oct 27 Hashing Weiss 5.1-5.4
    MIDTERM EXAM  
    Advanced Algorithms  
22 Oct 29 Convex Hull (Divide and Conquer) Jeff Erickson's Lecture Notes
David Mount lecture notes (Pg 15)
23 Nov 3 Convex Hull (Graham scan, Gift wrapping and Chan's Algo) Jeff Erickson's Lecture Notes
24 Nov 5 Closest Pair KT 5.4
25 Nov 10 Randomized Matrix Multiplication Verification
Randomized Approximate Median
Frievald's Algorithm
De Berg's lecture notes
26 Nov 12 Randomized Median Finding
Randomized QuickSort
KT 13.5
Avrim Blum's lecture notes(Sec. 3.4.2)
27 Nov 17 Vertex Cover - Greedy Algo, 2-approx algo.
Travelling salesman problem
Lecture Notes on Approximation (Section K3, K5, K6, K7)
28 Nov 19 Weighted Vertex Cover - 2-approx algo using LP rounding KT 11.6

Weiss : Data Structure and Algorithm Analysis in C, Mark Allen Weiss

KT : Algorithm Design, Kleinberg and Tardos