Chapters indicated are for the fifth edition of the book. The corresponding chapters in
other editions might be different.
Slides
- Week 1 (September 13, 15).  
Course overview, algorithm analysis
  Chapter 4
- Overview  
(pdf).
- Design of algorithms, complexity function
 
(pdf).
- Computing the time complexity of an algorithm
 
(pdf)
- Week 2 (September 20, 22).  
Analysis of Algorithms
  Chapter 4
- Book's slides on analysis of algorithms
 
(pdf)
- Time complexity of binary search
 
(pdf)
- Week 3 (September 27, 29). 
ADT's, Exceptions, and Dictionaries
  Chapter 2
- Abstract data types
 
(pdf)
- Exceptions
 
(pdf)
- Dictionaries
 
(pdf) 
- Week 4 (October 4, 6). 
Dictionaries, hash tables
  Chapter 9
- Week 5 (October 11, 13). 
Trees
  Chapter 7
- Week 6 (October 18, 20). 
Binary search trees, AVL Trees
  
Chapter 10
- Binary search trees   
(pdf)
- AVL Trees  
(pdf)
- Week 7 (October 25, 27). 
AVL trees
  Chapter 10
- Deleting from AVL Trees  
(pdf)
- Week 8 (November 1, 3). 
Multiway search trees, (2,4)-trees
  Chapter 10, 14
- Multi-way search trees, (2,4)-trees  
(pdf)
- Week 9 (November 8, 10). 
B-trees
  Chapter 10, 14
- Week 10 (November 15, 17). 
B-trees, Graphs.
Chapter 10, 13
- Graphs  
(pdf)
- Implementation of graphs
(pdf)
- Week 11 (November 22, 24). 
Graphs.
Chapter 13
- Graph traversals, depth first search
(pdf)
- Breadth first search   
(pdf)
- Week 12 (November 29, December 1). 
Graphs.
Chapter 13
- Directed graphs  
(pdf)
- Shortest paths, Dijkstra's algorithm
  
(pdf)
- Minimum spanning trees   
(pdf).
- Week 13 (December 6). 
Sorting.
Chapter 13, Section 3.1.2, 8.2.3, Chapter 11
- Insertion sort and selection sort
  
(pdf)
- Mergesort
  
(pdf)