CS 240: Algorithms and Data Structures
James Madison University, Fall 2025

The schedule below represents my current best estimate concerning due dates (and everything else). I am providing this information to give you a general idea of the pace and timing of the class. This schedule will certainly change as the semester progresses.

WEEK Date

CLASS OUT IN
1 08-20 1 Collection Review Course Introduction


08-22
Collection Review

2 08-25 2 Iterators + Counting Iterator Coding Lab DONE Iterator HW - Multiset

08-27
Intro to Counting


08-29
Mastery Practice 1: Collections + Iterators + Counting

3 09-01 3 Asymptotic Analysis Counting "Lab" Counting HW?

09-03
Big O etc.


09-05
Mastery 1

4 09-08 4 Array Lists More big O ArrayList HW

09-10
ArrayList Intro


09-12
Mastery Practice 2: Big O

5 09-15 5 Linked Lists, Stacks, Queues Linked List Stack Queue Linked List HW

09-17
Linked List Lab


09-19
Mastery 2: Big O

6 09-22 6 Recursion Wrap up lists etc. Harder LL HW (Hybrid Deque?)

09-24
Start Recursion


09-26
Mastery Practice 3: Lists, Stacks Queues

7 09-29 7 Solving Recurrences Solving Recurrences Recursion Coding + Analysis

10-01
Solving Recurrences


10-03
Mastery 3

8 10-06 8 Sorting Simple sorts Intro Sorting HW (simple)

10-08
Merge Sort


10-10
Mastery Practice 4: Recursion

9 10-13 9 Sorting Quicksort Sorting HW (merge/quick)

10-15
Sorting Lab


10-17
Mastery 4

10 10-20 10
Mastery 5 Practice: Sorting


10-22
FALL BREAK


10-24
FALL BREAK

11 10-27 11 Trees Intro to Trees Tree HW - recursive tree exercises

10-29
Tree lab


10-31
Mastery 5: Sorting

12 11-03 12 Trees Binary Search Trees BST HW

11-05
BST Lab


11-07
Mastery Practice 5: Trees

13 11-10 13 Hashing PriorityQueue/Heap Heap HW

11-12
Hashing


11-14
Mastery 5

14 11-17 14 Graphs Hashing Hashing HW

11-19
Hashing


11-21
Mastery Practice 6: Hashing

15 11-24

THANKSGIVING


11-26
THANKSGIVING


11-28
THANKSGIVING

16 12-01 15 Review Graph


12-03
Application Lab


12-05
Review