Bryn Mawr College
CMSC 151: Data Structures
Syllabus -- Fall 2021
Last updated: Oct 29, 2021

This document will evolve through the semester. Looking forward it expessses a plan. Looking backward, it expessses what actually happened.

Week 1. 8/31 and 9/2 Introduction, Java Review, Generics Chapters Prelude, 1, Java Interlude 1 Lab 1 -- getting started and csv files No homework due
Week 2. 9/7 and 9/9 Bag Implementation; Algorithm Analysis Ch 2, 4, Java Interlude 2, Java Interlude 8 Lab 2 -- Some Unix Homework 1 -- a return to coding (in Java)
Week 3. 9/14 and 9/16 ArrayList Ch 10, 11, Java Interlude 3 Lab 3 -- Debugging and breakpoints Homework 2 -- arrays and Zip codes
Week 4. 9/21 and 9/23 Hashtables ch 20-23 Lab 4 -- Debugging and breakpoints Homework 3 -- Zip codes and Classes
Week 5. 9/28 and 9/30 Review and Midterm 1 No Lab No homework due
Week 6. 10/5 and 10/7 Stacks and Queues and Java Comparable Ch 5-8 (in ch 6, only the Array-based implementation). In ch 7 skip "The ADT Dequeue" (sections 7.14-7.18). In ch 8, 8.7-8.16, 8.34
Java Interlude 5 -- generics and the Comprable interface
Lab 5 -- VSC Breakpoints Homework 4 -- Jane Austen Hashtables
Week 7. 10/18 and 10/20 Recursion, Sorted Lists, Binary Search ch 8,9,14 Lab 6 -- complete stack HW 5 -- Capital Gains Stacks
Week 8. 10/25 and 10/27 Recursion ch 17, 19, 24.32-34, ch 27(1-16) no code for heaps on Midterm 2, Java Interlude 7 Abstract Classes Lab 7 -- Recursive problems HW 6 -- Recursion with Backtracking (Due in 2 weeks)
Week 9. 11/2, 11/4 Review and Midterm 2 Midterm review Questions No homework due
Week 10. 11/9, 11/11 Sorting Ch 15 and 16 Insertion and Selection sort by Hand Recursion homework due. Heaps homework assigned
Week 10. 11/16, 11/18 Linked Lists ch 3,10,11,12 Linked List insertion Quicksort, due before Thanksgiving
Week 11. 11/23 Trees ch 24, 25 NO LAB Linked list Baby Names (yes, over Thanksgiving. )
Week 12. 11/30, 12/2 Trees, Binary Search Trees, Balanced Binary Trees, Graphs Ch 25, 26, 28, 29 Balancing Rotations Trees of Baby Names
Week 13. 12/7, 12/9 Graphs Ch 29 No Lab Optional Tree homework