Class Schedule and Lecture Slides

[7/15/2004: subject to change]

Most of the slides are based on previous lecture notes of this course as given in University of Washington by Tami Tamir (Winter 2004), which in turn are based on lecture notes of Linda Shapiro (Spring 2003), Jean-Loup Baer (Winter 2003), Richard Ladner (Autumn 2002), Raj Rao (Spring 2001) and Doug Johnson (Spring 2002). The slides by Tami also draw on previous lecture notes as given in the Technion, Israel , by her with Alon Itai and Dan Gaiger.  In addition, slides developed by Ashish Sabarwal (August 2003) are used this quarter.

The slides initially (6/21/2004) linked here are exactly the ones used in Winter 2004.  Over the course of the summer, updated and changed slides will be posted, generally after the lecture in which they are presented.

Please let me know if you have any remarks / suggestions, or if you find errors in the slides which have been presented.

The schedule below is subject to change!

Unit 1 (6/21): Introduction.

Reading: Chapters 1, 2

Unit 1b (6/23): Analyzing Algorithms.

Unit 2 (6/25): Pointers and Lists.

Reading: Chapter 3.1, 3.2

Unit 2b (6/25-6/28): The Java Collections API.

Reading: Appendix B. Reference: The Java API Documentation

Unit 3 (6/28, 6/30): Stacks and Queues.

Reading: Chapters 3.3, 3.4

Unit 4 (7/1-7/7): Trees, Binary Trees, Search Trees.

Reading: Chapters 4.1, 4.2, 4.3

Midterm Exam #1 (7/9)
Will include everything covered though 7/8.   Midterm exam as givenExam with answers and notesJava code for last problemPhotos of weighted trees.

Unit 5 (7/7-7/12): AVL Trees.

Unit 6 (7/14): Splay Trees.

Unit 7 (7/14): B Trees and Rank Trees.   We  may  come back  to pick up this topic later

Slides in PDF  Demo of B-tree insertion 1    2

Reading : Chapter 4.7

Unit 8 (7/16): Binary Heaps.

Reading : Chapters 6.1-6.4

Unit 9 (7/19): Binomial Queues.

Reading : Chapter 6.8

Unit 10 (7/21-7/23): Hashing.

Reading : Chapter 5

Unit 11 (7/26-7/28): Graph Algorithms – Introduction and Topological Sort.

Reading : Chapters 9.1 and 9.2

Midterm Exam #2
(7/30)
Will include everything covered though 7/28.

Unit 12 (8/2): Graph Algorithms – BFS, DFS, Shortest path algorithms.

Slides in PDF  (colored printing is recommended, or bring a non-black pen with you to the lecture).

Reading : Chapters 9.3, 9.6, 10.3.4

Unit13 (8/4-8/6): Disjoint Union/Find.

Reading : Chapter 8

Unit 14 (8/9): Graph Algorithms - Minimum Spanning Tree.

Slides in PDF  (colored printing is recommended, or bring blue and red pens with you to the lecture).

Reading : Chapters 9.5

Unit15 (8/11-8/16): Sorting.

Reading : Chapter 7

Catch up (8/18)

Final Exam (8/20).  Emphasis on last three weeks of course.  Full topic list.

-----------------------------------------------------------------------------------------------------------

Note:  the lecture notes are grouped here in topics (units). We might cover one unit in more than one lecture.