Computer Science 226 |
| # | Lecture Notes | Chapter(s) | In-class Demos |
| 1 | Union-find | 1-5 | code |
| 2 | Elementary sorts | 6 | code |
| 3 | Efficient sorts | 7, 8 | partitioning merging code |
| 4 | Priority queues | 9 | code |
| 5 | Elementary symbol tables | 12 | Intro to CS notes |
| 6 | Hashing | 14 | |
| 7 | Binary search trees | 12 | Growing Tree Tool code |
| 8 | Balanced trees | 13 | Growing Tree Tool |
| 9 | Tries | 15 | code |
| 10 | Radix sorts | 10 | 3-way partitioning code |
| 11 | String searching | 19* | DFA KMP code |
| 12 | Midterm | ||
| 13 | Data compression | 22* | Huffman LZW code |
| 14 | Geometric algorithms | 24*, 25* | convex hulls Voronoi code |
| 15 | Geometric searching | 26*, 27* | sweep line intersection applications |
| 16 | Undirected graphs | 17, 18 | DFS BFS Euler maze code |
| 17 | Minimum spanning trees | 20 | Graph applet applications |
| 18 | Directed graphs | 19 | DFS topological sort PERT code |
| 19 | Shortest paths | 21 | Dijkstra |
| 20 | Max flow, min cut | 22 | augmenting path code |
| 21 | Regular expressions | handout | |
| 22 | Linear programming | article | |
| 23 | Reductions | - | |
| 24 | Course wrapup | article | |