CS 216 - Data Structures
Readings


Unless otherwise noted, all readings are from the course text.  Each reading assignment should be completed before the class on the date indicated.  These readings are subject to change; check here for updates.  If a reading assigned in class does not match the reading assignment here, the reading assigned in class supercedes.
Class Month Day Topic Readings (parenthesized
reading are optional)
1 September 2 Course Overview, Data Structures and Algorithms, Representing problems, solving problems  
2   4 Representing problems, solving problems (cont.) Cormen et al Ch. 1, link 1, link 2, link 3
3   9 Stacks and Queues; Array-based stack implementation 10.1
4   11 Stochastic test harnesses; Array-based queue implementation  
5   16 in class implementation  
6   18 Linked lists: Singly-linked lists; List-based stack implementation; List-based queue implementation 10.2
7   23 Linked lists: Doubly-linked lists  
8   25 Linked lists: Doubly-linked lists (cont.), Big-O notation, tradeoff discussion  
9   30 Graphs: search problem formulation, directed-graphs, breadth-first search, depth-first search 22.1-22.2, search problems
10 October 2 Graphs: search tradeoffs, depth-limited search, iterative-deepening depth-first search  
11   7 Graphs: tree representations, repeated state detection, in-class development/testing 10.4
12   9 Hash tables: Chained hash tables, hash functions 11.1-11.3 (skip 11.3.3)
13   16 Hash tables:  open-address hashing 11.4
14   21 In-class midterm exam  
15   23    
16   28    
17   30    
18 November 4    
19   6    
20   11    
21   13    
22   18    
23   20    
24   25    
25 December 2    
26   4    
27   9    
28   11