sep 30 - introduction
oct 2 - complexity
oct 4 - complexity
oct 7 - lists - homework 0 (using Unix) due
oct 9 - lists
oct 11 - lists
oct 14 - sorting - homework 1 (complexity) due
oct 16 - sorting
oct 18 - sorting
oct 21 - trees - homework 2 (programming: nano-lisp) due
oct 23 - avl trees
oct 25 - splay trees
oct 28 - hashing - homework 3 (sorting) due
oct 30 - hashing
nov 1 - hashing
nov 4 - midterm exam
nov 6 - heaps
nov 8 - heaps
nov 11 - NO CLASS
nov 13 - heaps - homework 4 (programming: word counting) due
nov 15 - union/find
nov 18 - union/find
nov 20 - graph algorithms
nov 22 - graph algorithms - homework 5 (written: hash tables, heaps, union/find) due
nov 25 - graph algorithms
nov 27 - quadtrees
nov 29 - NO CLASS
dec 2 - b-trees
dec 4 - NP completeness
dec 6 - TBA
dec 9 - review of course - homework 6 (programming: maze runners) due
dec 11 - demos of final projects
end of classes
dec 16 - Exam