Design and Analysis of Algorithms (810:153)

In-Class Questions and Lecture Notes

Lecture 31 (12-9-03) Handling hard problems: backtracking, branch-and-bound

Lecture 30 (12-4-03) Theory of P and NP

Lecture 29 (12-2-03) Lower-bounds arguments

Lecture 26 (11-20-03) Greedy Algorithm - Dijkstra's Algorithm

Lecture 23 (11-11-03) Greedy Algorithm

Lecture 22 (11-4-03) Dynamic programming - Floyd's Alg. and Optimal BST

Lecture 20 (10-30-03) Dynamic programming - Warshall's Algorithm

Lecture 19 (10-28-03) Dynamic programming - Binomial Coefficient

Lecture 18 (10-23-03) Dynamic Programming

Lecture 16 (10-16-03) Space and Time Tradeoffs

Lecture 12 (10-2-03) 2-3 Trees

Lecture 11 (9-30-03) Transform-and-conquer (AVL trees)

Lecture 9 (9-23-03) Decrease-and-Conquer

Lecture 8 (9-18-03) Coin-change problem

Lecture 4 (9-4-03) Analyzing recursive algorithms

Lecture 3 (9-2-03) Analyzing nested loops

Lecture 2 (8-28-03) Average case analysis of binary search