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

You can also access older recordings: Fall 2024, Spring 2024 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
Wed, Jan 22, 2025 Lecture 1
Java Review [slides]
Lab00 - Command Line, Unix, Vim
Lab01 - Exceptions & I/O (Due Fri, Jan 31, 2025)
HW00 - Arrays & Classes (Due Fri, Jan 31, 2025)
Mon, Jan 27, 2025 Lecture 2
Inheritence
OOP [slides]
Wed, Jan 29, 2025 Lecture 3
Arrays
Generics [slides]
Lab02 - Inheritance, ExpandableArray (Due Fri, Feb 7, 2025)
HW01 - ExpandableArray & Inheritance (Due Fri, Feb 7, 2025)
Mon, Feb 3, 2025 Lecture 4
LinkedList [slides]
Wed, Feb 5, 2025 Lecture 5
FancyLinkedList [slides]
Lab03 - LinkedLists (Due Tue, Feb 25, 2025)
HW02 - LinkedLists (Due Tue, Feb 25, 2025)
Mon, Feb 10, 2025 Lecture 6
Linked List Review [slides]
Wed, Feb 12, 2025 Lecture 7
Interfaces
Object Comparison
Algorithmic Analysis [slides]
Lab04 - Interfaces (Due Tue, Feb 25, 2025)
Mon, Feb 17, 2025 Lecture 8
Stacks
Checkstyle
Junit [slides]
Wed, Feb 19, 2025 Lecture 9
Implementing Stacks
Queues [slides]
Lab05 - Stacks (Due Sun, Mar 2, 2025)
HW03 - Stacks & Queues (Due Sun, Mar 2, 2025)
Mon, Feb 24, 2025 Lecture 10
Implementing Queues
Dequeues
Wed, Feb 26, 2025 Lecture 11
Lists
Iterators
Binary Search
Lab06 - Iterators & ArrayList (Due Fri, Mar 7, 2025)
HW04 - Binary Search (Due Fri, Mar 7, 2025)
Mon, Mar 3, 2025 Lecture 12
Midterm Review
Wed, Mar 5, 2025 Midterm
Mon, Mar 10, 2025 Spring Break. No Class.
Wed, Mar 12, 2025 Spring Break. No Class.

Part II

Date Topic Assignment
Mon, Mar 17, 2025 Lecture 13
Trees
Wed, Mar 19, 2025 Lecture 14
Tree Traversals
Lab07 - Binary Trees (Due Fri, Mar 28, 2025)
HW05 - Binary Trees (Due Fri, Mar 28, 2025)
Mon, Mar 24, 2025 Lecture 15
Heaps
Wed, Mar 26, 2025 Lecture 16
Heaps
Priority Queues
Lab08 - Array based Binary Trees & Heaps (Due Fri, Apr 4, 2025)
HW06 - Heaps (Due Fri, Apr 4, 2025)
Mon, Mar 31, 2025 Lecture 17
Maps
Wed, Apr 2, 2025 Lecture 18
HashMaps I
No Lab
No Homework
Mon, Apr 7, 2025 Lecture 19
HashMaps II
Handling Collisions
Wed, Apr 9, 2025 Lecture 20
HashMaps III
Lab09 - HashMaps (Due Fri, Apr 18, 2025)
HW07 - Hash Tables (Due Fri, Apr 18, 2025)
Mon, Apr 14, 2025 Lecture 21
Merge Sort
Quick Sort
Wed, Apr 16, 2025 Lecture 22
Sorting Review
No Lab
No Homework
Mon, Apr 21, 2025 Lecture 23
AVL Trees
Wed, Apr 23, 2025 Lecture 24
Splay Trees
Lab 10 - AVL Trees (Due Fri, May 2, 2025)
HW08 - AVL Trees (Due Fri, May 2, 2025)
Mon, Apr 28, 2025 Lecture 25
Graphs
Wed, Apr 30, 2025 Lecture 26
Midterm Review
Lab 11 - Graphs (Due Sun, May 4, 2025)
No Homework