Skip to main content
You can >watch recordings of the Spring 2026 lecture videos online.

You can also access older recordings: Fall 2024, Spring 2024, Spring 2025, Fall 2025 Recordings are saved on Panopto and require a BMC/HC login.

The lecture schedule will be updated as the term progresses.

Pre-course

Make sure you are registered for the course Gradescope and Piazza.

Please complete Lab00 before the first lab meeting.

Part I

Date Topic Assignment
Tue, Sep 1, 2026 Lecture 1
Java Review [slides]
Lab00 - Command Line, Unix, Vim
Thu, Sep 3, 2026 Lecture 2
Java Reivew II [slides]
Lab01 - Exceptions & I/O (Due Tue, Sep 8, 2026)
HW00 - Arrays & Classes (Due Fri, Sep 11, 2026)
Tue, Sep 8, 2026 Lecture 3
Runtime Analysis
Arrays [slides]
Thu, Sep 10, 2026 Lecture 4
Arrays II
Generics
Nested Classes [slides]
Lab02 - Inheritance, ExpandableArray (Due Tue, Sep 15, 2026)
HW01 - ExpandableArray & Inheritance (Due Fri, Sep 18, 2026)
Tue, Sep 15, 2026 Lecture 5
LinkedList
Thu, Sep 17, 2026 Lecture 6
Doubly Linked Lists
⚠️ Quiz 1 - Exceptions and Inheritance
Lab03 - LinkedLists (Due Tue, Sep 22, 2026)
HW02 - LinkedLists (Due Fri, Oct 2, 2026)
Tue, Sep 22, 2026 Lecture 7
Interfaces
Object Comparison
Thu, Sep 24, 2026 Lecture 8
Stacks
Checkstyle
Junit
⚠️ Quiz 2 - LinkedLists and Arrays
Lab04 - Interfaces (Due Tue, Sep 29, 2026)
Tue, Sep 29, 2026 Lecture 9
Implementing Stacks
Queues
Thu, Oct 1, 2026 Lecture 10
Stack Review
Queues
⚠️ Quiz 3 - Interfaces
Lab05 - Stacks (Due Tue, Oct 6, 2026)
HW03 - Stacks & Queues (Due Fri, Oct 9, 2026)
Tue, Oct 6, 2026 Lecture 10
Implementing Queues
Dequeues
Iterators
Thu, Oct 8, 2026 Lecture 11
Binary Search
⚠️ Quiz 4 - Stacks and Queues
Lab06 - Iterators & ArrayList (Due Mon, Oct 19, 2026)
HW04 - Binary Search (Due Mon, Oct 19, 2026)
Tue, Oct 13, 2026 Fall Break. No Class
Thu, Oct 15, 2026 Fall Break. No Class
Tue, Oct 20, 2026 Lecture 13
Midterm Review
Thu, Oct 22, 2026 Midterm

Part II

Date Topic Assignment
Tue, Oct 27, 2026 Lecture 14
Tree Review
Heaps
Thu, Oct 29, 2026 Lecture 15
Heaps II
Lab07 - Binary Trees (Due Sun, Mar 29, 2026)
HW05 - Binary Trees (Due Sun, Mar 29, 2026)
Tue, Nov 3, 2026 Lecture 16
Priority Queues
Thu, Nov 5, 2026 Lecture 17
Maps
HashMaps
Lab08 - Array based Binary Trees & Heaps (Due Mon, Apr 6, 2026)
HW06 - Heaps (Due Mon, Apr 6, 2026)
Tue, Nov 10, 2026 Lecture 18
HashMaps II
Handling Collisions
Thu, Nov 12, 2026 Lecture 19
Merge Sort
Lab09 - HashMaps (Due Sun, Apr 19, 2026)
HW07 - Hash Tables (Due Sun, Apr 19, 2026)
Tue, Nov 17, 2026 Lecture 20
Quick Sort
Thu, Nov 19, 2026 Lecture 21
AVL Trees
Lab 10 - AVL Trees (Due Fri, May 1, 2026)
HW08 - AVL Trees (Due Fri, May 1, 2026)
Tue, Nov 24, 2026 Lecture 22
AVL Trees II
Thu, Nov 26, 2026 Thanksgiving break. No class.
Tue, Dec 1, 2026 Lecture 23
Union Find
Thu, Dec 3, 2026 Lecture 24
Graphs
Lab 11 - Graphs (Due Fri, May 1, 2026)
No Homework
Tue, Dec 8, 2026 Final Review
Thu, Dec 10, 2026 Final Review