CSE 332 Autumn 2011
Lecture Topics

Subscribe to this calendar (google, iCal, etc.)

In reading assignments below, MW refers to the Mark Weiss textbook and DG refers to the Dan Grossman notes.

September 28 Abstract data types; worst case running time
MW 1.1-1.2, 2.1-2.4.2
September 30 Big O, big Omega, big Theta; rules of sum and product for big O
October 3 Dictionary ADT
MW 4.1-4.3
October 5 Quicksort implemented recursively and using a stack
MW 3.6
Quicksort handout
October 7 Dictionary implementations by unsorted and sorted arrays and linked lists; review of binary search trees
October 10 AVL trees
MW 4.4
October 12 AVL trees: height, rotations
October 14 AVL trees: insert, remove
October 17 AVL analyses; splay trees
MW 4.5
October 19 Splay trees
October 21 Hashing: separate chaining
MW 5.1-5.3
October 24 Hashing: open addressing, rehashing
MW 5.4-5.5
October 26 Universal classes of hash functions; mergesort
MW 7.6
Universal classes of hash functions
October 28 Mergesort analysis
October 31 Graphs; topological sort
MW 9.1-9.2
November 2 Topological sort analysis; breadth-first search
MW 9.3
November 7 Breadth-First search
November 9 Introduction to parallelism
DG 2-3
November 14 Divide and conquer parallelism
November 16 ForkJoin Framework; reductions and maps
DG 4
November 18 Analyzing fork-join algorithms; prefix sum problem
DG 5
November 21 Parallel prefix, pack, quicksort
November 23 Mutual exclusion and locks
DG 6
November 28 Priority queues, heaps, insert
MW 6.1-6.3
November 30 deleteMin, buildHeap, heapsort
MW 7.5
December 2 Dijkstra's algorithm for least cost paths
MW 9.3
December 5 Dijkstra's algorithm: implementation and analysis
December 7 Minimum spanning trees, Kruskal's algorithm, union/find
MW 8.1-8.5, 9.5.2
December 9 Kruskal's algorithm: implementation and analysis