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
Lab00 - Command Line, Unix, Vim
Thu, Sep 3, 2026 Lecture 2
OOP.
Lab01 - Exceptions & I/O (Due Wed, Jan 28, 2026)
HW00 - Arrays & Classes (Due Mon, Jan 26, 2026)
Tue, Sep 8, 2026 Lecture 3
Arrays
Generics
Thu, Sep 10, 2026 Lecture 4
Array Review
Runtime Complexity
Nested Classes
Lab02 - Inheritance, ExpandableArray (Due Wed, Feb 4, 2026)
HW01 - ExpandableArray & Inheritance (Due Wed, Feb 4, 2026)
Tue, Sep 15, 2026 Lecture 5
LinkedList
Thu, Sep 17, 2026 Lecture 6
Doubly Linked Lists
Lab03 - LinkedLists (Due Mon, Feb 16, 2026)
HW02 - LinkedLists (Due Mon, Feb 16, 2026)
Tue, Sep 22, 2026 Lecture 7
Interfaces
Object Comparison
Thu, Sep 24, 2026 Lecture 8
Stacks
Checkstyle
Junit
Lab04 - Interfaces (Due Wed, Feb 18, 2026)
Tue, Sep 29, 2026 Lecture 9
Implementing Stacks
Queues
Thu, Oct 1, 2026 Lecture 10
Stack Review
Queues
Lab05 - Stacks (Due Wed, Mar 4, 2026)
HW03 - Stacks & Queues (Due Wed, Mar 4, 2026)
Tue, Oct 6, 2026 Lecture 10
Implementing Queues
Dequeues
Iterators
Thu, Oct 8, 2026 Lecture 11
Binary Search
Lab06 - Iterators & ArrayList (Due Mon, Mar 16, 2026)
HW04 - Binary Search (Due Mon, Mar 16, 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