The lecture schedule will be updated as the term progresses.
Make sure you are registered for the course Gradescope and Piazza.
Please complete Lab00 before the first lab meeting.
| Date | Topic | Assignment |
|---|---|---|
| Wed, Jan 21, 2026 |
Lecture 1 Java Review [slides] |
Lab00 - Command Line, Unix, Vim
Lab01 - Exceptions & I/O (Due Wed, Jan 28, 2026) HW00 - Arrays & Classes (Due Mon, Jan 26, 2026) |
| Mon, Jan 26, 2026 |
Lecture 2 No Class. |
|
| Wed, Jan 28, 2026 |
Lecture 3 Arrays Generics [slides] |
Lab02 - Inheritance, ExpandableArray
(Due Wed, Feb 4, 2026)
HW01 - ExpandableArray & Inheritance (Due Wed, Feb 4, 2026) |
| Mon, Feb 2, 2026 |
Lecture 4 LinkedList [slides] |
|
| Wed, Feb 4, 2026 |
Lecture 5 FancyLinkedList |
Lab03 - LinkedLists
(Due Mon, Feb 16, 2026)
HW02 - LinkedLists (Due Mon, Feb 16, 2026) |
| Mon, Feb 9, 2026 |
Lecture 6 Linked List Review |
|
| Wed, Feb 11, 2026 |
Lecture 7 Interfaces Object Comparison Algorithmic Analysis |
Lab04 - Interfaces
(Due Mon, Feb 16, 2026)
|
| Mon, Feb 16, 2026 |
Lecture 8 Stacks Checkstyle Junit |
|
| Wed, Feb 18, 2026 |
Lecture 9 Implementing Stacks Queues |
Lab05 - Stacks
(Due Mon, Feb 23, 2026)
HW03 - Stacks & Queues (Due Mon, Feb 23, 2026) |
| Mon, Feb 23, 2026 |
Lecture 10 Implementing Queues Dequeues |
|
| Wed, Feb 25, 2026 |
Lecture 11 Lists Iterators Binary Search |
Lab06 - Iterators & ArrayList
(Due Mon, Mar 2, 2026)
HW04 - Binary Search (Due Mon, Mar 2, 2026) |
| Mon, Mar 9, 2026 |
Spring Break No Class
|
|
| Wed, Mar 11, 2026 |
Spring Break No Class
|
|
| Mon, Mar 16, 2026 |
Lecture 12 Midterm Review |
|
| Wed, Mar 18, 2026 |
Midterm
|
| Date | Topic | Assignment |
|---|---|---|
| Mon, Mar 16, 2026 |
Lecture 13 Trees |
|
| Wed, Mar 18, 2026 |
Lecture 14 Tree Traversals |
Lab07 - Binary Trees
(Due Mon, Mar 23, 2026)
HW05 - Binary Trees (Due Mon, Mar 23, 2026) |
| Mon, Mar 23, 2026 |
Lecture 15 Heaps |
|
| Wed, Mar 25, 2026 |
Lecture 16 Heaps Priority Queues |
Lab08 - Array based Binary Trees & Heaps
(Due Mon, Mar 30, 2026)
HW06 - Heaps (Due Mon, Mar 30, 2026) |
| Mon, Mar 30, 2026 |
Lecture 17 Priority Queues |
|
| Wed, Apr 1, 2026 |
Lecture 18 Maps HashMaps |
No Lab
No Homework |
| Mon, Apr 6, 2026 |
Lecture 19 HashMaps II Handling Collisions |
|
| Wed, Apr 8, 2026 |
Lecture 20 HashMaps III |
Lab09 - HashMaps
(Due Mon, Apr 13, 2026)
HW07 - Hash Tables (Due Mon, Apr 13, 2026) |
| Mon, Apr 13, 2026 |
Lecture 21 No Class. |
|
| Wed, Apr 15, 2026 |
Lecture 22 No Class. |
No Lab
No Homework |
| Mon, Apr 20, 2026 |
Lecture 23 Merge Sort Quick Sort |
|
| Wed, Apr 22, 2026 |
Lecture 24 AVL Trees II |
Lab 10 - AVL Trees
(Due Fri, May 1, 2026)
HW08 - AVL Trees (Due Fri, May 1, 2026) |
| Mon, Apr 27, 2026 |
Lecture 25 Graphs |
|
| Wed, Apr 29, 2026 |
Lecture 26 Final Review |
Lab 11 - Graphs
(Due Fri, May 1, 2026)
No Homework |