COMP 210 Data Structures

Spring 2025 Department of Computer Science Kalamazoo College

Class Time: MWF 9:40 am - 10:55 am Room: OU321A Instructor: Tasnim Gharaibeh

SCHEDULE


IMPORTANT NOTE:The COMP210 schedule might change during the quarter! Watch this space frequently for any changes (or any updates) during the quarter. This page was last modified on June 5, 2025 at 7:44:45 PM.
Week 1
Day Class Topic Reading Due Recommendations
M1 Syllabus Review
Intro to Data Structures
Review of Data Types

Chapter 1.2, Appendix B.1 to B.8, and B.11
W1 Arrays
Project #1 Indexing Substrings
Appendix B.9, B.10, B.12, and B.13 DQ #1 Project #1
F1 Time Complexity Chapter 2 DQ #2 Play: Visualizing Order and Big-Oh
More: Asymptotic Notation
Week 2
Day Class Topic Reading Due Recommendations
M2 Linked Structures Chapter 4.1*, 4.2, and 4.3
*Ignore references to stacks & queues for now.
Submit your code from Stage 1 of the Indexing Substrings project.
W2 Collection Class
Random Access Lists vs Linked Lists
Big-Oh Analysis
Mini-Lab #1 Linked List
Appendix B.14 to B.16, Chapter 3.1 and 3.3*
*Ignore references to stacks & queues for now.
Submit your code after completing Stage 2 of the Indexing Substrings project. Continue working on Project #1
F2 Continue working on Mini-Lab #1 Linked List
Continue working on Project #1 Indexing Substrings
     
Week 3
Day Class Topic Reading Due Recommendations
M3
Stack ADT
Stack Operations (and Big-Oh Analysis)
Stack as Array
Stack as Linked List
Mini-Lab #2 Stack
Chapter 3.2, 3.6 to 3.8, Chapter 4.4 to 4.6 DQ #3
Mini-Lab #1
Play: Stack: Array Implementation
Play: Stack: Linked List Implementation
W3 Queue ADT
Queue Operations (and Big-Oh Analysis)
Queue as Array
Queue as Linked List
Mini-Lab #3 Queue
Chapter 5.6 to 5.8 Mini-Lab #2 Play: Queue: Array Implementation
Play: Queue: Linked List Implementation
F3 Continue with Mini-Lab #3
Project #2 Car Wash
DQ #4
Project #1
Week 4
Day Class Topic Reading Due Recommendations
M4 List ADT
Ordered, Unordered, and Indexed Lists
List as Array
List as Linked List
Chapter 6
DQ #5
W4 Sequential and Binary Search
Comparing Search Algorithms
Big-Oh Analysis
Chapter 9.1 DQ #6 Mini-Lab #3 Play: Searching a Sorted List
More: Binary Search
F4
Mini-Lab #4 OrderedList and Binary Search
Week 5
Day Class Topic Reading Due Recommendations
M5
Recursion
Recursive Thinking
Recursion Vs. Iteration
Chapter 8 DQ #7
Play: Reverse a String Using Recursion
More: Recursion
W5 More on Recursion
F5 Catch-up day
Week 6
Day Class Topic Reading Due Recommendations
M6
More Recursion
Sorting
Big-Oh Analysis
Mini-Lab #5 Sorting and Recursion
Chapter 9.2 and 9.3 Mini-Lab #4 Play: Sort Demos
More: Comparing Sorts
Play: Radix Sort
W6 Continue working on Mini-Lab #5
Project #3 The N Queens Problem
DQ #8
Project #2
Read about TimSort
F6 Quiz 3
Work on:
Mini-Lab #5 Sorting and Recursion
Project #3 The N Queens Problem
Week 7
Day Class Topic Reading Due Recommendations
M7 Tree ADT

Binary Tree ADT
Implementing Binary Trees
Chapter 10.1 to 10.3, 10.4 to 10.7
W7 Tree Traversal Algorithm Mini-Lab #6 Binary Trees DQ #9
Mini-Lab #5
F7 Binary Search Trees Chapter 11.1 to 11.3 Play: Binary Search Tree
Week 8
Day Class Topic Reading Due Recommendations
M8 Binary Search Trees
MiniLab #6.5 Binary Search Trees
Balanced Binary Search Tree
Mini-Lab #7 AVL Trees (optional)
Chapter 11.4 to 11.6 Project #3 Play: AVL Tree
Play: Red/Black Tree
W8 AVL Trees
Red/Black Trees
See Links from M8 for playing with AVL and Red/Black trees
F8 Project #4 Chapter 13 (Section 13.7 will help with Project)
Week 9
Day Class Topic Reading Due Recommendations
M9 Set ADT
Map/Dictionary ADT
Hashing and Hash Tables
Chapter 13 DQ #10
Mini-Lab #6
W9 Continue working on Project #4
F9 Heaps and Priority Queues Chapter 12 Mini-Lab #6.5 Play: Minheap
Week 10
Day Class Topic Reading Due Recommendations
M10 Graph ADT
Types of Graphs
Common Graph Algorithms
Chapter 15 More: Describing Graphs
W10 More on Graphs
F10
Quiz 4

Finals Week