*The lecture notes have been adapted from the notes of Lars Arge.
Date  Topic  Reading, Notes*  Homework** 
Aug 30  Introduction and overview.
Insertion sort. 
L01.pdf  CLRS 1, 2.12.2
Joke of the day (replace 'grad' with 'undergrad') 

Asymptotic growth of functions, recurrences, summations.  
Sep 4  Mergesort. Asymptotic growth.  L02.pdf  CLRS 2.3, 3  H1.pdf 
Sep 6  Asymptotic growth, continued.  L03.pdf  CLRS A, 4.1  
Sep 11  Summations. Zeno's paradoxes.  L04.pdf  CLRS 4.14.2
Zeno's paradoxes 
H2.pdf 
Sep 13  Recurrences.  L05.pdf  CLRS 4.34.4, 7.17.2  
Sep 18  Recurrences, Master method, Strassen's matrix multiplication algorithm.  
Sorting (insertion sort, mergesort, selection sort, quicksort).
Sorting lower bounds. Linear time sorting (counting sort, radix sort, bucket sort). 

Sep 20  Quicksort.  L06.pdf  CLRS 7.37.4, C.2  
Sep 25  Sorting lower bounds. Linear time sorting.  L07.pdf  CLRS 8  H3.pdf 
Sept 26 evening  Problem session  recurrences and summations.  skipped, not needed  
Selection.  
Sep 27  Selection.  L08.pdf  CLRS 9  
Priority queues: heap.  
Oct 2  Heaps. Heapsort.  L09.pdf  CLRS 6  H4.pdf 
Dictionary: binary search tree and augmented BST.  
Oct 4  Binary search trees.

L10.pdf  CLRS 10, 12.112.3  
Oct 69  Fall break  
Oct 10 evening  Exam review (L1L10)  Practice exam fall03
For other practice exams check links 

Oct 11  Exam 1 (L1L10)  
Oct 16  Exam hand back and discussion.
Skip lists. Hashing. 
L11.pdf  CLRS 11.111.3, handout [GT]  skiplists.pdf  
Oct 18  Hashing.  Hashing  Universal hashing (MIT Open courseware)  H6.pdf 
Oct 23 
Redblack trees. 
L12.pdf  CLRS 13
RB Trees (MIT Open Courseware) Animation  RBtrees (wiki) 

Oct 25  Augmented search trees. Interval tree.  L13.pdf  CLRS 14  H7.pdf 
Dynamic programming and greedy algorithms.  
Oct 30  Dynamic programming.  L15.pdf  CLRS 15.215.3  
Nov 1  Greedy algorithms.  L16.pdf  CLRS 16.116.2  H8.pdf 
??? evening  Problem session: Augmented search trees.  Some practice problems  
Amortization.  
Nov 6  Amortized Analysis.  L17.pdf  CLRS 17.117.3  
Nov 8  Splay trees.  L18.pdf  animation
handout [Kozen] 
H9.pdf 
Nov 14 evening  Problem session: Dynamic programming and greedy algorithms.  Problems Some fun practice problems pdf1  pdf2 from HarveyMudd College. 

Nov 13  Exam Review (L1118)  Practice: 231 Fall 2003  Sol
For other practice exams check links Pessimal algorithms (Broder, Stolfi) 

Graph algorithms.  
Nov 15  Basic graph algorithms: BFS, DFS.  basicgraph.pdf  CLRS B.4B.5, 22.122.4  H10.pdf 
??? evening  Problem session: Amortized analysis and exam 2 review.  Practice exam: 231 Fall 2003  Sol  
Nov 20  Exam 2 (L1118)  
Nov 22  Thanksgiving break  
Nov 27  Graphs. Topological sort.  CLRS 22.122.4
DFS applet  BFS applet 

Nov 29  Shortest paths.  shp.pdf  CLRS 24.0, 24.3
Dijkstra animation  Slides (from R. Sedgewick, Princeton) 
H11.pdf 
Dec 4  Minimum spanning trees. Unionfind.  mst.pdf  CLRS 23, 21.121.3
Graph vizualizations (from R. Sedgewick, Princeton) 

Dec 6  Last class. Review, etc  UnionFind (from R. Sedgewick, Princeton)
Longest path (from Princeton) 

???  Final review.  review.pdf  
Dec 14, 9am, Searles 126  Final Exam (L125) 