|
Below are links to the lecture slides. Once the lecture moves above the "Lectures below have not yet been updated for Fall 2015" part of the table, no significant changes will be made.
# | DATE | TOPIC | SLIDES | READINGS | STUDY | DEMOS |
---|---|---|---|---|---|---|
1 | 9/17 | Intro · Union Find | 1.5 | Quick-find · Quick-union · Weighted | ||
2 | 9/22 | Analysis of Algorithms | 1.4 | guide | Binary search | |
3 | 9/24 | Stacks and Queues | 1.3 | guide | Dijkstra 2-stack | |
4 | 9/29 | Elementary Sorts | 2.1 | guide | Selection · Insertion · h-sorting · Shuffle | |
5 | 10/1 | Mergesort | 2.2 | guide | Merging | |
6 | 10/6 | Quicksort | 2.3 | guide | Partitioning · Quick-select | |
7 | 10/8 | Priority Queues | 2.4 | guide | Heap · Heapsort | |
8 | 10/13 | Elementary Symbol Tables · BSTs | 3.1–3.2 | guide | BST | |
9 | 10/15 | Geometric Applications of BSTs | – | guide | Kd tree · Interval search tree | |
10 | 10/20 | Balanced Search Trees | 3.3 | guide | 2-3 tree · Red-black BST | |
11 | 10/22 | Hash Tables · Symbol Table Applications | 3.4–3.5 | Linear probing | ||
12 | 10/27 | Midterm Exam | ||||
13 | 10/29 | Undirected Graphs | 4.1 | guide | DFS · BFS · Connected components | |
14 | 11/10 | Directed Graphs | 4.2 | guide | DFS · Topological sort · Kosaraju-Sharir | |
15 | 11/12 | Minimum Spanning Trees | 4.3 | guide | Greedy · Kruskal · Prim | |
16 | 11/17 | Shortest Paths | 4.4 | guide | Dijkstra · Acyclic · Bellman-Ford | |
17 | 11/19 | Maximum Flow | 6.4 | guide | Ford-Fulkerson | |
18 | 11/24 | String Sorts | 5.1 | guide | Key-indexed counting | |
19 | 12/1 | Tries | 5.2 | guide | Trie · TST | |
20 | 12/3 | Substring Search | 5.3 | guide | KMP | |
21 | 12/8 | Regular Expressions | 5.4 | guide | NFA simulation · NFA construction | |
22 | 12/10 | Data Compression | 5.5 | guide | Huffman · LZW | |
23 | 12/15 | Reductions | 6.5 | guide | ||
24 | 12/17 | Combinatorial Search · Algorithm Design | – | |||
Lectures below have not yet been updated for Fall 2015 |
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 indicated sections from Algorithms, 4th edition. An effective strategy is to skim the textbook before the lecture, read it thoroughly soon afterwards, complete the Blackboard exercises (and perhaps some additional B-level exercises from the study guide).
Online viewing and printing. These lecture slides are suitable for online viewing (one per page) or printing (four per page). The Quicktime movies are designed to be manually advanced. Unfortunately, Quicktime on OS X no longer supports interactive Quicktime movies; we recommend using Quicktime 7 instead.
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.