Schedule

The following is a tentative listing of the schedule of the course. Each day of the week will be filled in as topics are covered. The slides used in each class will be made available for download here. Lab days are marked in green.

Week Starting Topics Monday Tuesday Wednesday Thursday Friday
1 08/18/25 Java review Slides (PDF)
Slides (PPTX)
Slides (PDF)
Slides (PPTX)
2 08/25/25 Complexity Slides (PDF)
Slides (PPTX)
Slides (PDF)
Slides (PPTX)
Slides (PDF)
Slides (PPTX)
Assignment 1 Due
3 09/01/25 Stacks and queues Labor Day Slides (PDF)
Slides (PPTX)
Slides (PDF)
Slides (PPTX)
Assignment 2 Due
4 09/08/25 Linked lists Slides (PDF)
Slides (PPTX)

Project 1 Due
5 09/15/25 Recursion
6 09/22/25 Binary trees Written Exam 1 Oral Exam 1 Ready Day
7 09/29/25 Balanced binary search trees
Assignment 3 Due
8 10/06/25 Hash tables
Project 2 Due
9 10/13/25 Graph basics October Break
10 10/20/25 Graph algorithms
Assignment 4 Due
11 10/27/25 B-trees and network flow
Assignment 5 Due
12 11/03/25 Sorting
Project 3 Due
13 11/10/25 Heaps Written Exam 2 Oral Exam 2
Assignment 6 Due
14 11/17/25 Strings
Assignment 7 Due
15 11/24/25 Review Thanksgiving
16 12/01/25 More review
Project 4 Due
Reading Day Final Exam

Exam Schedule

Here is the tentative exam schedule listed separately.

  • Written Exam 1: Monday, 09/22/2025, in class
  • Oral Exam 1: Tuesday, 09/23/2025, in class
  • Written Exam 2: Monday, 11/10/2025, in class
  • Oral Exam 2: Tuesday, 11/11/2025, in class

  • Final: 10:15 - 12:15 p.m., Friday, 12/05/2025

Project Schedule

Here is the tentative schedule of project due dates listed separately.

  • Project 1: Friday, 09/12/2025
  • Project 2: Friday, 10/10/2025
  • Project 3: Friday, 11/07/2025
  • Project 4: Wednesday, 12/03/2025