The following is a tentative schedule of the lecture material and reading assignments. Reading assignments refer to sections or chapters in Arnow and Weiss (AW) or Weiss (W). The online version of this syllabus will be updated as things change.
Lecture Date | Topic | Reading | Due |
L 1, Aug. 24 | Course Overview | AW 1 | Lab 1 Compiling |
L 2, Aug. 26 | Using Objects & Classes e.g., Strings & I/O |
AW 2 & 3 | . |
L 3, Aug. 28 | Defining Classes | AW 4 | HW 1 due |
L 4, Aug. 31 | Conditionals e.g., int and bool |
AW 5 & 6 | Lab 2 Fraction class |
L 5, Sep. 2 | Testing | AW 7 | . |
L 6, Sep. 4 | Vectors | AW 8 | HW 2 due |
Sep. 7 | Holiday | . | Lab 3 Vectors |
L 7, Sep. 9 | Iteration | AW 9 | . |
L 8, Sep. 11 | Recursion | AW 11 | HW 3 due |
L 9, Sep. 14 | Linked Structures | . | Lab 4 Lists |
L 10, Sep. 16 | Search, Sorting e.g., arrays |
AW 10 | . |
L 11, Sep. 18 | Inheritance | AW 13 | PJ 1 due 9/20 at 5pm |
L 12, Sep. 21 | Interfaces | (AW 13) | Lab 5 Inheritance |
L 13, Sep. 23 | Exceptions | AW 14 | . |
L 14, Sep. 25 | Java Packages | HW 4 due | |
L 15, Sep. 28 | Midterm 1 | Covers L1-12 | Lab 6 Exceptions |
L 16, Sep. 30 | Java Wrap-Up | . | |
L 17, Oct. 2 | Asymptotic Analysis | W 5 except 5.3 | HW 5 due |
L 18, Oct. 5 | Algorithm Analysis | W 5 except 5.3 | Lab 7 Asymptotic Analysis |
L 19, Oct. 7 | Encapsulation | . | |
L 20, Oct. 9 | Data Structure Overview | W 6 except 6.4, 6.5 | PJ 2 due 10/11 at 5pm |
L 21, Oct. 12 | Stacks and Queues | W 11, W 15 | Lab 8 Search |
L 22, Oct. 14 | Game Trees | W 7.7, W 10.2 | . |
L 23, Oct. 16 | Hash Tables | W 19.1-19.2, W 19.5 | HW 6 due |
L 24, Oct. 19 | Lists and Trees | W 17 | Lab 9 Hash Tables |
L 25, Oct. 21 | Binary Search Trees | W 12.2, W 18.1, W18.3 | . |
L 26, Oct. 23 | Balanced Search Trees | W 18.5 | HW 7 due |
L 27, Oct. 26 | Priority Queues 1 | W 13.2 | Lab 10 General Trees |
L 28, Oct. 28 | Priority Queues 2 | W 20.1-20.4 | . |
L 29. Oct. 30 | Graphs | W 14.1-14.2 | HW 8 due |
L 30, Nov. 2 | Sorting 1 | W 8.1-8.3, 8.5, 20.5 | . |
L 31, Nov. 4 | Sorting 2 | W 8.6-8.8 | PJ 3 due |
L 32, Nov. 6 | Sorting 3 | W 8.6-8.8 | . |
L 33, Nov. 9 | Midterm 2 | Covers L1-L29 | Lab 11 Sorting |
L 34, Nov. 11 | Sorting 4 (video) | . | . |
L 35, Nov. 13 | Disjoint Sets | W 23 except 23.6 | HW 9 due Sunday |
L 36, Nov. 16 | Splay Trees | W 21.1-21.3 | Lab 12 Compiling & Debugging C++ |
L 37, Nov. 18 | C Pointers | . | . |
L 38, Nov. 20 | Memory Management 1 | . | HW 10 due |
L 39, Nov. 23 | Memory Management 2 | . | . |
L 40, Nov. 25 | C++ Classes | . | PJ 4 due |
Nov. 27 | Holiday | . | . |
L 41, Nov. 30 | C++ Trivia | . | Lab 13 |
L 42, Dec. 2 | Real Programming; C++ Sucks |
. | . |
L 43, Dec. 4 | Review | . | HW 11 due |