Computer Science 226
Algorithms and Data Structures
Spring 2007


Course Information | Assignments | Exercises | Lectures | Administrative Website

SCHEDULE OF LECTURES

Here is a tentative list of lectures and the slides used in class. These slides are subject to change until one hour before lecture. Students are fully responsible for all material presented in lectures, even if some of it does not appear in these slides. These slides are intended for the lecture presentations; for reference, use the corresponding chapters in Algorithms in Java Parts 1-5 (third edition) and the online handouts. An effective strategy is to look over the indicated chapter before the lecture, then read it in detail soon afterwards.

# LECTURE NOTES CHAPTER BOOKSITE DEMOS
0 Overview
1 Union-find 1 5.3
2 Stacks and queues 3-4 2.6
3 Analysis of algorithms 2
Elementary sorts 6 3.1
4 Efficient sorts 7-8 3.2   3.3 merging   partitioning
5 Advanced topics in sorting 8 3.5 3-way
6 Priority queues 9 3.4
7 Symbol Tables 12 4.1
8 Binary Search Trees 12, 13 4.3
9 Balanced BSTs 13 4.4 Growing Tree Tool
10 Hashing 14 4.2
11 Radix sorts 10 6.1  
12 Midterm
13 Tries 15 6.2
14 String searching* 19* 6.3 DFA   KMP  
15 Data compression 22* 6.5 Huffman*   LZW*
16 Geometric algorithms* 24-25* 7.1   7.2   7.5 convex hulls   Voronoi
17 Geometric search 26-27* 7.3   7.4 sweep line intersection   applications
18 Undirected graphs 17-18 5.1 DFS   BFS   Euler   maze
19 Minimum spanning trees 20 5.4 Graph applet   applications
20 Directed graphs 19 5.2 DFS   topological sort   PERT
21 Shortest paths 21 5.5 Dijkstra
22 Linear programming article 8.4  
23 Reductions - 8.5  
24 Combinatorial search - 8.7 The Longest Path [mp3]

The lectures denoted by * are from the last offering of the course. New lectures will be posted by 9AM on the day of the lecture. The chapters denoted by * are from the second edition, and are available in PDF from the Princeton University network. All other chapters are from the third edition. We have only begun to build the booksite, but you might find it useful since it contains links to the Java code from lecture.


Copyright © 2006, Bob Sedgewick and Kevin Wayne.