Date | Description |
---|---|
January 5 |
Java Basics Read the notional machine handout |
January 7 |
Object-Oriented Programming I Read Bailey 1.3--1.7 for more examples |
January 10 |
Object-Oriented Programming II Read Algorithms 1.2 |
January 12 |
Extensible Arrays No assigned reading |
January 14 |
Linked Lists I Read Bailey 9--9.2 |
January 17 |
Linked Lists II After lecture, play around with linked list visualizations |
January 19 |
ArrayList vs LinkedList No reading |
January 21 |
Stacks and Queues Read this summary of stacks & queues. After lecture, explore Two-Stack Algorithm for arithmetic: |
January 24 |
Iterators No reading |
January 26 |
Time and Space Complexity Read Bailey 5.1.1
|
January 28 |
Recursion and Sorting Read Bailey section 5.2.1 |
January 31 |
Searching No reading |
February 2 |
Maps Read Bailey 15.2 and 15.3 |
February 4 |
Hashing I Read Bailey 15.4.3 and 15.4.4 |
February 9 |
Hashing II Read Bailey 15.4.1, 15.4.2, and 15.4.5 |
February 11 |
Introduction to Trees Read Bailey 12.1, 12.2, and 12.3 |
February 14 |
Binary Search Trees Read Algorithms 3.2 |
February 16 |
Tree Traversals Read Bailey 12.6 |
February 18 |
Trees for Multidimensional Data Read lab 6 writeup |
February 21 |
Advanced Search Trees After lecture, read Bailey 14.5 (optionally 14.6 and 14.7) |
February 23 |
Priority Queues and Heaps Read Algorithms 2.4 |
February 25 |
Introduction to Graphs Read Bailey 16.1 and 16.2 |
February 28 |
Graph Search Read Bailey 16.4.1 and 16.4.2 |
March 2 |
Graph Data Structures Read Algorithms 4.1 and Algorithms 4.2 |
March 4 |
Shortest Paths Read Algorithms 4.4 |
March 7 |
Minimum Spanning Trees Read Algorithms 4.3 |
March 9 |
Introduction to Parallelism Read Grossman 2.1--3.4 |
March 11 | Review; Ask me anything; course evals |