Date  Topic and/or Event  Readings 
Jan. 18  Lecture 1: Introduction and Overview  Levitin Ch. 1; Topic Notes: Introduction 
Jan. 20  Lecture 2: Fundamental Data Structures  
Jan. 25  Lecture 3: Asymptotic Analysis  Levitin Ch. 2; Topic Notes: Analysis 
Jan. 27  Lecture 4: Asymptotic Analysis  
Feb. 1  Lecture 5: More Asymptotic Analysis  
Feb. 3  Lecture 6: More Mathematical Analysis; Problem Set 1 Programs Due 2/4 at 4 PM  
Feb. 8  Lecture 7: More Mathematical Analysis; Empirical Analysis; Problem Set 1 written problems due start of class  
Feb. 10  Lecture 8: BruteForce Algorithms  Levitin Ch. 3; Topic Notes: BruteForce Algorithms 
Feb. 15  Lecture 9: More Brute Force  
Feb. 17  Lecture 10: Exhaustive Search; Divide and Conquer; Problem Set 2 Due 2/18 at 4 PM  Levitin Ch. 4; Topic Notes: DivideandConquer Algorithms 
Feb. 22  Lecture 11: Exam Review; Exam 1 Out  
Feb. 24  Lecture 12: More Divide and Conquer; Exam 1 Due  
Mar. 1  Lecture 13: Guest Lecture: Decrease and Conquer  Levitin Ch. 5; Topic Notes: DecreaseandConquer Algorithms 
Mar. 3  Lecture 14: Guest Lecture: More Decrease and Conquer  
Mar. 8  Lecture 15: Binary Search Trees; Balanced Trees  Levitin Ch. 6.3 ; Topic Notes: Binary Search Trees 
Mar. 11  Lecture 16: Guest Lecture: String Matching  Levitin Ch. 7.2 
Mar. 1418  Spring Break  
Mar. 22  Lecture 17: AVL Tree Wrapup; Introduction to Heaps  Levitin Ch. 6.4 ; Topic Notes: Heaps 
Mar. 24  Lecture 18: Heaps and Heapsort  
Mar. 29  Lecture 19: Counting Sorts; Hashing; Problem Set 4 due at 4:30 PM  Levitin Ch. 7.1; Topic Notes: Counting Sorts; Levitin Ch. 7.3; Topic Notes: Hashing 
Mar. 31  Lecture 20: Hashing Wrapup  
Apr. 5  Lecture 21: Exam Review; Problem Set 5 due at 10:00 AM; Exam 2 Out  
Apr. 7  Lecture 22: Dynamic Programming; Exam 2 Due  Levitin Ch. 8; Topic Notes: Dynamic Programming 
Apr. 12  Lecture 23: Exam 2 Recap  
Apr. 14  Lecture 24: Graph Algorithms  Levitin Ch. 9; Topic Notes: Graph Algorithms 
Apr. 19  Lecture 25: More Graphs; Huffman Codes; Problem Set 6 due Apr. 20  Topic Notes: Huffman Codes 
Apr. 21  No Class: Easter Break  
Apr. 26  Lecture 26: Limitations of Algorithms  Levitin Ch. 11; Topic Notes: Limitations of Algorithms 
Apr. 28  Lecture 27: NPcompleteness, Wrapup  
May 2  Problem Set 7 due  
May 56  Final Exam  
