This table contains links to the lecture slides before the midterm.
# | DATE | SLIDES | SECTION | STUDY | DEMOS |
---|---|---|---|---|---|
1 | Tuesday 2/04 |
Introduction Union–Find | 1.5 |
guide |
Quick-find Quick-union Weighted quick-union |
2 | Thursday 2/06 |
Analysis of Algorithms | 1.4 |
guide |
Binary search |
3 | Tuesday 2/11 |
Stacks and Queues | 1.3 |
guide |
– |
4 | Thursday 2/13 |
Elementary Sorts | 2.1 |
guide |
Selection Insertion |
5 | Tuesday 2/18 |
Mergesort | 2.2 |
guide |
Merging |
6 | Thursday 2/20 |
Quicksort | 2.3 |
guide |
Partitioning Quick-select |
7 | Tuesday 2/25 |
Priority Queues | 2.4 |
guide |
Heap Heapsort |
8 | Thursday 2/27 |
Elementary Symbol Tables BSTs | 3.1 3.2 |
guide guide |
BST |
9 | Tuesday 3/03 |
Balanced Search Trees | 3.3 |
guide |
2–3 tree Red–black BST |
10 | Thursday 3/5 |
Geometric Applications of BSTs | – |
guide |
Kd tree |
11 | Tuesday 3/10 |
Hash Tables | 3.4 |
guide |
Linear probing |
12 | Thursday 3/12 |
IntelliJ debugging workshop (optional and chill; via Zoom) | – |
debugging.zip | |
13 | Tuesday 3/24 |
Midterm Exam | McGraw study guide Exam Information |
This table contains links to the video lectures after the midterm.
# | DATE | LECTURES | SECTION | STUDY | DEMOS |
---|---|---|---|---|---|
14 | Thursday 3/26 |
Undirected Graphs (excluding connected components) | 4.1 |
guide |
DFS BFS |
15 | Tuesday 3/31 |
Directed Graphs (excluding strong components) | 4.2 |
guide |
DFS BFS Topological sort |
16 | Thursday 4/2 |
Minimum Spanning Trees | 4.3 |
guide |
Kruskal Prim |
17 | Tuesday 4/7 |
Shortest Paths | 4.4 |
guide |
Bellman–Ford Dijkstra |
18 | Thursday 4/9 |
Maxflows and Mincuts | 6.4 |
guide |
Ford–Fulkerson |
19 | Tuesday 4/14 |
String Sorts (excluding Suffix Arrays) | 5.1 |
guide |
Key-indexed counting |
20 | Thursday 4/16 |
Tries | 5.2 |
guide |
Trie TST |
21 | Tuesday 4/21 |
Data Compression | 5.5 |
guide |
Huffman LZW |
22 | Thursday 4/23 |
Substring Search (excluding Rabin–Karp) | 5.3 |
guide |
KMP |
23 | Tuesday 4/28 |
Regular Expressions | 5.4 |
guide |
NFA simulation NFA construction |
24 | Thursday 4/30 |
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.