I have personal, handwritten lecture notes for each topic. These notes were designed for my own use during lectures, and were not originally intended as complete notes for students' use. In any event, I have decided that they might still be useful for students, and so I have scanned them and will make them available through this webpage. For each lecture, you may follow the link for the "Topic" to see copies of these notes.
Date  Topic  Reading  Lab 

[prerequisite]  Java programming  Review Ch. 1  
Tues, Aug 27 
Introduction (writing programs better) (writing better programs) 
Ch.2 (skim 2.2, 2.4.2, 2.4.3) 
Lab 00 
Thur, Aug 29  Stacks and Queues  Ch. 4.1, 4.2 (skim 4.2.4) 

Tues, Sep 3  Analysis Tools  Ch. 3  Lab 01 
Thur, Sep 5  Linked Lists  Ch. 4.3  
Tues, Sep 10 
Doubleended queues (doublylinked lists) 
Ch. 4.4  Lab 02 
Thur, Sep 12 
Vector ADT and Implementation (amortization) 
Ch. 5.1  
Tues, Sep 17 
List ADT and Positions
Guest Lecturer: Prof. Andy Harrington 
Ch. 5.2  Lab 03 
Thur, Sep 19 
Sequences and containers; Iterators 
Ch. 5.3, 5.5, 5.6  
Tues, Sep 24 
Trees (ADT, Interface) 
Ch. 6.1  Lab 04 
Thur, Sep 26  First
Exam (does not include Sep. 24 material) 

Tues, Oct 1 
Basic Algorithms on Trees (depth, traversals, Euler tours) 
Ch. 6.2 Ch. 6.3.4 
Lab 05 
Thur, Oct 3 
Binary Trees (interface, data structures) 
Ch. 6.3.16.3.3 Ch. 6.4.1, 6.4.2 

Tues, Oct 8  Implementing General Trees, Introduction to Priority Queues 
Ch. 6.4.3, 6.4.4 Ch. 7.1, 7.2 (skim 7.1.2, 7.2.3) 
Lab 06 
Thur, Oct 10  Heaps  Ch. 7.3  
Tues, Oct 15  No Class: MidSemester Break  
Thur, Oct 17  Text Compression  Ch. 11.4  
Tues, Oct 22 
Sorting (Selection, Insertion, Bubble, Heapsort, Merge) 
Ch. 5.4, 7.1.2, 7.2.3, 7.3.4, Ch. 10.1 
Lab 07 
Thur, Oct 24  Quicksort  Ch. 10.3, 10.6  
Tues, Oct 29 
Comparison Sorting Lower Bound Bucketsort and Radixsort 
Ch. 10.4, 10.5  Lab 08 
Thur, Oct 31 
Dictionaries (Binary Search) 
Ch. 8.1, 8.2, 8.4, 8.5 

Tues, Nov 5  Second Exam
(does not include Oct. 31 material) 
Lab 09  
Thur, Nov 7  Binary Search Trees  Ch. 9.1  
Tues, Nov 12  (2,4) Trees  Ch. 9.3, 9.4  Lab 10 
Thur, Nov 14  RedBlack Trees  Ch. 9.5  
Tues, Nov 19 
RedBlack Trees (continued) 
Ch. 9.5  Lab 11 
Thur, Nov 21  Hashing  Ch. 8.3  
Tues, Nov 26  Introduction to "Graphs" (a.k.a. "networks") 
Ch. 12.1, 12.2  Lab 12 
Thur, Nov 29  No Class: Thanksgiving Break  
Tues, Dec 3  Traversing a Graph DepthFirst Search, BreadthFirst Search 
Ch 12.3  NO LAB 
Thur, Dec 5  No Class: Study Days  
Thur, Dec 12  Final Exam (6:008:00pm) 