Lectures

Below are links to the lecture slides.
# DATE SLIDES SECTION STUDY DEMOS
1 Thursday
9/13
 Introduction  
 Union–Find  
1.5
guide
Quick-find
Quick-union
Weighted quick-union
2 Tuesday
9/18
 Analysis of Algorithms  
1.4
guide
Binary search
3 Thursday
9/20
 Stacks and Queues  
1.3
guide
4 Tuesday
9/25
 Elementary Sorts  
2.1
guide
Selection
Insertion
Shuffle
5 Thursday
9/27
 Mergesort  
2.2
guide
Merging
6 Tuesday
10/2
 Quicksort  
2.3
guide
Partitioning
Quick-select
7 Thursday
10/4
 Priority Queues  
2.4
guide
Heap
Heapsort
8 Tuesday
10/9
 Elementary Symbol Tables  
 BSTs  
3.1
3.2
guide
guide
BST
9 Thursday
10/11
 Geometric Applications of BSTs  

guide
Kd tree
10 Tuesday
10/16
 Balanced Search Trees  
3.3
guide
2–3 tree
Red–black BST
11 Thursday
10/18
 Hash Tables  
3.4
guide
Linear probing
12 Tuesday
10/23
 Midterm Exam 
 
 
13 Thursday
10/25
 Midterm Exam Retrospective 
 
 
14 Tuesday
11/6
 Undirected Graphs  
4.1
guide
DFS
BFS
15 Thursday
11/8
 Directed Graphs  
4.2
guide
DFS
BFS
Topological sort
16 Tuesday
11/13
 Minimum Spanning Trees  
4.3
guide
Greedy
Kruskal
Prim
17 Thursday
11/15
 Shortest Paths  
4.4
guide
Bellman–Ford
Dijkstra
18 Tuesday
11/20
 Maxflows and Mincuts  
6.4
guide
Ford–Fulkerson
19 Tuesday
11/27
 String Sorts  
5.1
guide
Key-indexed counting
20 Thursday
11/29
 Data Compression  
5.5
guide
Huffman
LZW
21 Tuesday
12/4
 Tries  
5.2
guide
Trie
TST
22 Thursday
12/6
 Substring Search  
5.3
guide
KMP
23 Tuesday
12/11
 Regular Expressions  
5.4
guide
NFA simulation
NFA construction
24 Thursday
12/13
 Algorithm Design  

 

Readings.All readings refer to Algorithms, 4th edition by R. Sedgewick and K. Wayne unless otherwise specified.

Study guide. Associated with each lecture is a study guide, which summarizes the most important topics and ideas from the lecture. It also includes optional (and ungraded) exercises.

Advice. In general, slides are intended for the lecture presentations and do not provide thorough descriptions of the material alone; for reference, read the corresponding sections from Algorithms, 4th edition. An effective strategy is to skim the textbook before the lecture, read it thoroughly soon afterwards, and complete the corresponding Quizzera quiz (and perhaps some additional B-level exercises from the study guide).

iClicker policy. Using an iClicker during lecture counts towards the participation component of your course grade. Using a classmate’s iClicker during lecture (or allowing someone else to use your iClicker during lecture) is prohibited.

Errata. Here is a list of known errors in the lecture slides and textbook.