Computer Science 210
Data Structures

Fall 2019, Siena College

Course Schedule

"J+DS zyBook" indicates readings from CSIS 210: Data Structures, by Lysecky, Lizarraga, Vahid, and McGovern, "Bailey" indicates readings from Java Structures: Data Structures in Java for the Principled Programmer, "Root 7" Edition, by Duane Bailey, and "OpenDSA" indicates readings from OpenDSA Data Structures and Algorithms Modules Collection, by OpenDSA Project Contributors. Additional readings will be given occasionally. Links will be added here with additional information about lectures, labs, and programming assignments. All assignment dates are subject to change, and are provided only as a general guideline until the actual assignment is handed out in class.

Date

Topic and/or Event Readings
September 4 Lecture 1: Lab 0 (handout only)
September 6 Lecture 2: No Class Meeting: Watch Video (State of the Map US 2019) Topic Notes: Introduction and Overview; J+DS zyBook Ch. 1-7
September 9 Lecture 3: Java Review: 2D Arrays and Custom Classes; Problem Set 1 out Topic Notes: Two-Dimensional Arrays; Topic Notes: Java Review: Arrays, Methods, Classes
September 11 Lecture 4: Lab 1
September 13 Lecture 5: More Memory Diagrams; ArrayList ADT Topic Notes: The ArrayList; J+DS zyBook Ch. 10
September 16 Lecture 6: More ArrayLists;
September 18 Lecture 7: Lab 2
September 20 Lecture 8: More ArrayList Practice
September 23 Lecture 9: Costs of ArrayList Operations
September 25 Lecture 10: Lab 3
September 27 Lecture 11: Big O Complexity; Generic Classes; Introduction to Recursion Topic Notes: Complexity and Asymptotic Analysis; Topic Notes: General Purpose Classes
September 30 Lecture 12: Recursive Methods Topic Notes: Recursive Methods; J+DS zyBook Ch. 11
October 1 Evening Exam, 7-9 PM
October 2 No Labs
October 4 Lecture 13: More Recursion
October 7 Lecture 14: Recursive Structures Topic Notes: Linked Structures
October 9 Lecture 15: Lab 4
October 11 No Class: President's Holiday
October 14 Lecture 16: Linked Lists J+DS zyBook Ch. 12-13
October 16 Lecture 17: Lab 5
October 18 Lecture 18: Linked Lists
October 21 Lecture 19: Linear Structures J+DS zyBook Ch. 14; Topic Notes: Linear Structures
October 23 Lecture 20: Lab 6
October 25 Lecture 21: Introduction to Tree Structures J+DS zyBook Ch. 15; Topic Notes: Trees
October 28 Lecture 22: Binary Search Trees; Comparables Topic Notes: Binary Search Trees
October 30 Lecture 23: Lab 7
November 1 Lecture 24: BST Wrapup; Review
November 4 Lecture 25: AVL Trees
November 5 Evening Exam, 7-9 PM
November 6 No Labs
November 8 Lecture 26: AVL Trees; Heaps Topic Notes: Priority Queues and Heaps
November 11 Lecture 27: Heaps
November 13 Lecture 28: Lab 8
November 15 Lecture 29: Heap-based Priority Queues; Sorting with BSTs and Heaps
November 18 Lecture 30: Huffman Trees Topic Notes: Huffman Trees
November 20 Lecture 31: Lab 9
November 22 Lecture 32: Building Huffman Trees
November 25 Lecture 33: Introduction to Hashing J+DS zyBook Ch. 16; Topic Notes: Maps and Hashing
November 27-29 No Class or Lab, Happy Thanksgiving!
December 2 Snow Day!
December 4 Lecture 34: Lab 10
December 6 Lecture 35: Hashing Wrapup; Review
December 9 Lecture 36: Review and Preview
December 12 Optional Final Exam Review, 1:30-2:30 PM, RB 328
December 13 Final Exam, 8:30-10:30 AM, RB 340