Click anywhere to see schedule.
| Week 1 |
Introduction to Data Structures Review of Java, including ArrayList and 2D Arrays Reading and Understanding Code Model-View-Controller Design Pattern Impact of Data Structure Choices Percolation Project |
|---|---|
| Week 2 |
Linear and Binary Search Algorithms Abstract Data Types (ADTs) and Interfaces Queue ADT Collection Classes |
| Week 3 |
Time Complexity LinkedLists Queues as LinkedLists Object-Oriented Design Linked List ML, Car Wash Design, Queue ML |
| Week 4 |
Stack ADT Facade, Iterator, Singleton, and Template Method Design Patterns Iterators, Iterable Interface Car Wash Project, Stack ML |
| Week 5 |
Sorting Algorithms Recursion and Sorting Analyzing Sorting Algorithms Ordered Lists Backtracking Mouse |
| Week 6 |
Lists as Recursive Data Structures Analyzing Recursion Recursive functions, Recursive Data Structures OrderedList ML, Recursive List ML, NQueens |
| Weeks 7 and 8 |
Trees, Types of Trees Tree Traversal Algorithms Binary Tree ADT Binary Search Trees Set ADT BinaryTree ML, BST ML |
| Week 9 |
Map/Dictionary ADT Hashing and Hash Tables |
| Week 10 |
Heaps and Priority Queues Review Heap ML, Dictionary ML |
| Not Covered in Fall 2025 | Graphs ADT Graph Algorithms |