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

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 HW
1 - Collection Review 08-26 Course Introduction
08-28 Fundamentals + Collections
2 - Iterators + Counting 08-31 Iterator Coding Lab Iterator HW - Multiset
09-02 Counting Lab (2 more intro exercises!)
09-04 Mastery Practice 1: Iterators + Counting
3 - Asymptotic Analysis 09-07 Best/Worst/Average Case Finish Multiset
09-09 Big O etc.
09-11 Mastery 1
4 - Array Lists 09-14 More big O ArrayList HW
09-16 ArrayList Intro
09-18 Mastery Practice 2: Big O
5 - Linked Lists, Stacks, Queues 09-21 Linked List Stack Queue Deque HW
09-23 Linked List Lab
09-25 Mastery 2: Big O
6 - Recursion 09-28 Wrap up lists etc. Recursion Exercises
09-30 Mastery Practice 3: Lists, Stacks Queues
10-02 Review Recursion
7 - Fall Break 10-05 Mastery 3 No HW
10-07 FALL BREAK
10-09 FALL BREAK
8 - Recurrences 10-12 Solving Recurrences Recursion and Recurrences HW
10-14 Solving Recurrences
10-16 Mastery Practice 4: Recursion
9 - Sorting 10-19 Simple sorts Intro Sorting HW
10-21 Merge Sort
10-23 Mastery 4 Recursion
10 - Sorting 10-26 Quicksort Finish Sorting HW
10-28 Sorting Lab
10-30 Mastery Practice 5: Sorting
11 - Trees 11-02 Intro to Trees Tree HW
11-04 Tree lab
11-06 Mastery 5: Sorting
12 - Trees 11-09 Binary Search Trees BST HW
11-11 BST Lab
11-13 Mastery Practice 6: Trees
13 - Hashing 11-16 PriorityQueue/Heap Finish BST HW
11-18 Hashing
11-20 Mastery 6
14 11-23 THANKSGIVING
11-25 THANKSGIVING
11-27 THANKSGIVING
15 - Hashing 11-30 Hashing Hashing HW
12-02 Hashing
12-04 Mastery Practice 7: Hashing
16 - Graphs 12-07 Graphs
12-09 Application Lab
12-11 Mastery Practice 8: Graphs + Application