Lectures

This table contains links to the lecture slides.
# DATE SLIDES SECTION STUDY DEMOS
1 Tuesday
2/2
 Introduction  
 Union–Find  
1.5
guide
Quick-find
Quick-union
Weighted quick-union
2 Thursday
2/4
 Analysis of Algorithms  
1.4
guide
3 Tuesday
2/9
 Stacks and Queues  
1.3
guide
Function-call stack
4 Thursday
2/11
 Advanced Java  

guide
5 Tuesday
2/16
 Elementary Sorts  
2.1
guide
Selection sort
Insertion sort
Binary search
6 Thursday
2/18
 Mergesort  
2.2
guide
Merging
7 Tuesday
2/23
 Quicksort  
2.3
guide
2-way partitioning
3-way partitioning
Quickselect
8 Thursday
2/25
 Priority Queues  
2.4
guide
Heap operations
9 Tuesday
3/2
 Elementary Symbol Tables  
 BSTs  
3.1
3.2
guide
guide
BST operations
10 Thursday
3/4
 Geometric Applications of BSTs  

guide
Line segment intersection
Kd trees
11 Tuesday
3/9
 Balanced Search Trees  
3.3
guide
2–3 trees
Red–black BSTs
12 Thursday
3/11
 Hash Tables  
3.4
guide
Linear probing
13 Thursday
3/18
 Midterm Review 
McGraw study guide
 
14 Tuesday
3/23
 Graphs and Digraphs I  
4.1
4.2
guide
Directed DFS
Directed Paths
Undirected DFS
15 Thursday
3/25
 Graphs and Digraphs II  
4.1
4.2
guide
Directed BFS
Topological sort
16 Tuesday
3/30
 Minimum Spanning Trees  
4.3
guide
Kruskal
Prim
17 Thursday
4/1
 Shortest Paths  
4.4
guide
Bellman–Ford
Dijkstra
18 Tuesday
4/6
 Dynamic Programming  
IntroCS
guide
19 Thursday
4/8
 Maxflows and Mincuts  
6.4
guide
Ford–Fulkerson
20 Tuesday
4/13
 String Sorts  
5.1
guide
Key-indexed counting
21 Thursday
4/15
 Tries  
5.2
guide
Tries
Ternary search tries
22 Tuesday
4/20
 Data Compression  
5.5
guide
Huffman
LZW
23 Thursday
4/22
 Algorithm Design  

guide
24 Tuesday
4/27
 no lecture 

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

Zoom etiquette. Here is some guidance on using Zoom during lecture.

Lecture recordings. We will record lectures and post them in Canvas to ensure that they are available to students regardless of their geographic location and time zone. You may choose to “opt out” of any recording in which you appear; contact the course staff immediately after the lecture so that we can edit the recording prior to posting. You may not post recordings of this class online or share them with anyone other than students enrolled in this course.

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.

You are welcome to discuss solutions to the exercises with classmates or on the course discussion forum.

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 iClicker Reef during lecture counts towards the participation component of your course grade. Using a classmate’s iClicker Reef during lecture (or allowing someone else to use your iClicker Reef during lecture) is prohibited.

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