Computer Science 226
Algorithms and Data Structures
Fall 2013


Course Information | Assignments | Exercises | Lectures | Exams | Precepts | Study Guide | Booksite

LECTURES

Below are links to the lecture slides. Once the lecture moves above the "Lectures below have not yet been updated for Fall 2013" part of the table, no significant changes will be made. All readings refer to Algorithms, 4th edition by R. Sedgewick and K. Wayne unless otherwise specified.

# DATE TOPIC SLIDES FLIPPED READINGS DEMOS
1 9/12 Intro · Union Find 1up · 4up 1.5 Quick-find · Quick-union
2 9/17 Analysis of Algorithms 1up · 4up 1.4 Binary search
3 9/19 Stacks and Queues 1up · 4up 1.3 Dijkstra 2-stack
4 9/24 Elementary Sorts 1up · 4up 2.1 Selection · Insertion · Shuffle · Graham
5 9/26 Mergesort 1up · 4up 2.2 Merging
6 10/1 Quicksort 1up · 4up 2.3 Partitioning · Dijkstra 3-way
7 10/3 Collections and Priority Queues 1up · 4up 2.4 Heap · Heapsort
8 10/8 Elementary Symbol Tables · BSTs 1up · 4up 3.1–3.2 BST
9 10/10 Balanced Search Trees 1up · 4up Flipped 3.3 2-3 tree · Red-black BST
10 10/15 Hash Tables · Searching Applications 1up · 4up 3.4–3.5 linear probing
11 10/17 Geometric Applications of BSTs 1up · 4up Kd tree · Interval search tree
12 10/22 Midterm Exam
13 10/24 Undirected Graphs 1up · 4up 4.1 DFS · BFS · Connected components
14 11/5 Directed Graphs 1up · 4up 4.2 DFS · Topological sort · Kosaraju-Sharir
15 11/7 Minimum Spanning Trees 1up · 4up Flipped 4.3 Greedy · Kruskal · Prim
16 11/12 Shortest Paths 1up · 4up 4.4 Dijkstra · Acyclic · Bellman-Ford
17 11/14 Maximum Flow 1up · 4up Flipped 6.4 Ford-Fulkerson
18 11/19 String Sorts 1up · 4up 5.1 Key-indexed counting
19 11/21 Tries 1up · 4up 5.2 Trie · TST
20 11/26 Substring Search 1up · 4up 5.3 KMP · KMP Construction
21 12/3 Regular Expressions 1up · 4up 5.4 NFA simulation · NFA construction
22 12/5 Data Compression 1up · 4up 5.5 Huffman · LZW
23 12/10 Reductions, Tractability, and P=NP 1up · 4up
24 12/12 What we've done
Where we're going
1up · 4up
That's it.


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, then read it thoroughly soon afterwards. We recommend printing the slides before lecture and annotating them during lecture.

Online viewing and printing. These lecture slides are suitable for online viewing (one per page) or printing (four per page).

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