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 | Reading | Assignment |
---|---|---|---|
Mon, Jan 22, 2024 |
Lecture 1 Java Review [slides] |
Chapter 1
|
Lab00 - Command Line, Unix, Vim
Lab01 - Exceptions & I/O |
Wed, Jan 24, 2024 |
Lecture 2 Inheritence OOP Arrays [slides] |
Chapter 2, Chapter 3.1, Chapter 7.2
|
|
Sun, Jan 28, 2024 |
|
HW00 - Arrays & Classes
(Due Thu, Feb 1, 2024)
|
|
Mon, Jan 29, 2024 |
Lecture 3 Generics [slides] |
Chapter 2.5
|
Lab02 - Inheritance, ExpandableArray
|
Wed, Jan 31, 2024 |
Lecture 4 LinkedList [slides] |
Chapter 3
|
|
Sun, Feb 4, 2024 |
|
HW01 - ArrayList & Inheritance
(Due Thu, Feb 8, 2024)
|
|
Mon, Feb 5, 2024 |
Lecture 5 FancyLinkedList [slides] |
Chapter 3
|
Lab03 - LinkedLists
|
Wed, Feb 7, 2024 |
Lecture 6 Algorithm Analysis [slides] |
Chapter 4
|
|
Sun, Feb 11, 2024 |
|
HW02 - LinkedLists
(Due Sun, Feb 18, 2024)
|
|
Mon, Feb 12, 2024 |
Lecture 7 Stacks [slides] |
Chapter 6.1
|
Lab04 - Interfaces
|
Wed, Feb 14, 2024 |
Lecture 8 Stacks & Junit [slides] |
Chapter 6.2-6.3
|
|
Sun, Feb 18, 2024 |
|
HW03 - Stacks & Queues
(Due Thu, Feb 22, 2024)
|
|
Mon, Feb 19, 2024 |
Lecture 9 Queues Lists & Iterators [slides] |
Chapter 7
|
Lab05 - Stacks
|
Wed, Feb 21, 2024 |
Lecture 10 Iterators, Recursion & Binary Search [slides] |
Chapter 5
|
|
Sun, Feb 25, 2024 |
|
HW04 - Binary Search
(Due Thu, Feb 29, 2024)
|
|
Mon, Feb 26, 2024 |
Lecture 11 Trees [slides] |
Chapter 8
|
Lab06 - Iterators & ArrayList
(Due Thu, Feb 29, 2024)
|
Wed, Feb 28, 2024 |
Lecture 12 Tree Traversals [slides] |
Chapter 8
|
|
Sun, Mar 3, 2024 |
|
HW05 - Binary Trees
(Due Sun, Mar 17, 2024)
|
|
Mon, Mar 4, 2024 |
Lecture 13 Midterm Review [slides] |
Lab07 - Binary Trees
|
|
Wed, Mar 6, 2024 |
Midterm
|
||
Mon, Mar 11, 2024 |
Spring Break
|
||
Wed, Mar 13, 2024 |
Spring Break
|
Date | Topic | Reading | Assignment |
---|---|---|---|
Mon, Mar 18, 2024 |
Lecture 14 Heaps [slides] |
Chapter 9 - Priority Queues
|
No Lab
|
Wed, Mar 20, 2024 |
Lecture 15 Heaps Priority Queues [slides] |
Chapter 9 - Priority Queues
|
|
Sun, Mar 24, 2024 |
|
HW06 - Heaps
(Due Thu, Apr 4, 2024)
|
|
Mon, Mar 25, 2024 |
Lecture 16 Quiz Review [slides] |
Lab08 - Array based Binary Trees & Heaps
|
|
Wed, Mar 27, 2024 |
Lecture 17 Quiz |
||
Mon, Apr 1, 2024 |
Lecture 18 Maps Hash Tables [slides] |
Chapter 10 - Maps, Hash Tables, and Skip Lists
|
No Lab
|
Wed, Apr 3, 2024 |
Hash Tables |
Chapter 10 - Maps, Hash Tables, and Skip Lists
|
|
Sun, Apr 7, 2024 |
|
HW07 - Hash Tables
(Due Sun, Apr 21, 2024)
|
|
Mon, Apr 8, 2024 |
Lecture 20 Hash Tables [slides] |
Chapter 12 - Sorting & Selection
|
Lab09 - HashMaps
|
Wed, Apr 10, 2024 |
Lecture 21 Merge Sort Quick Sort [slides] |
Chapter 10.3 - Sorted Maps
Chapter 11.2 - 11.3 Balanced Trees, AVL Trees |
|
Mon, Apr 15, 2024 |
Lecture 22 Merge Sort, Quick Sort Balanced Search Trees, AVL Trees [slides] |
Chapter 11.2 - 11.6
|
Lab10 - AVL Trees
|
Wed, Apr 17, 2024 |
Lecture 23 Balanced Trees [slides] |
Chapter 11.2 - 11.6
|
|
Sun, Apr 21, 2024 |
|
HW08 - AVL Trees
(Due Thu, May 9, 2024)
|
|
Mon, Apr 22, 2024 |
Lecture 24 Splay Trees Graphs [slides] |
Chapter 10.5
|
No Lab.
|
Wed, Apr 24, 2024 |
Lecture 25 Graphs [slides] |
Chapter 14.1 - Chapter 14.3
|
|
Sun, Apr 28, 2024 |
|
No Homework
|
|
Mon, Apr 29, 2024 |
Lecture 26 Midterm Review [slides] |
No Lab - Extra Credit Opportunity
|
|
Wed, May 1, 2024 |
Lecture 27 Midterm Review [slides] |