- Lecture 1 - Introductions: slides (printable)
- Lecture 2 - Algorithm Analysis I: slides (printable)
- Lecture 3 - Algorithm Analysis II: slides (printable)
- Lecture 4 - Stacks and Queues: slides (printable)
- Lecture 5 - Lists: slides (printable)
-
Lecture 6 - Binary Search Trees
slides
printable
-
Lecture 7 - More Binary Tree Operations
slides
printable
-
Lecture 8 - Heaps
slides
printable
-
Lecture 9 - General Trees
slides
printable
-
Lecture P2 - Huffman Project
slides
printable
-
Lecture 10 - Sorting I
slides
printable
- Lecture 11 - Sorting II: n lg n slides printable
-
Lecture 12 - Sorting III : Non-Comparison Sorting
slides
printable
-
Lecture 13 - Hash Tables
slides
printable
-
Lecture 14 - Disjoint Sets
slides
printable
- Lecture 15 - Graphs
slides
printable
-
Lecture 16 - Graph Traversals: BFS and DFS
slides
printable
-
Lecture 17 - Shortest Path
slides
printable
-
Lecture 18 - Spanning Trees
slides
printable
- Lecture 19 - 2-3 Trees and B-Trees
slides
printable
- Lecture 20 - Connected Components
slides
printable
- Lecture 21 - Binomial Queues
slides
printable
- Lecture 22 - Computational Geomoetry
slides
printable
- Lecture 23 - Two Player Games slides
- Maze Solver MazeSolver.java. Download this file, and fill in the findPath method to solve the maze.
- Lecture 24 - Dynamic Programmming
slides
printable
- Lecture 25 - P and NP
slides
printable
- Lecture FR - Final Review
slides
printable