Computer Science 501
Data Structures and Algorithm Analysis

Fall 2015, The College of Saint Rose

Course Schedule

"Bailey" indicates readings from Java Structures: Data Structures in Java for the Principled Programmer, "Root 7" Edition, by Duane Bailey. 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.


Topic and/or Event Readings
September 2 Lecture 1: Introduction and Overview; Java and Object-Oriented programming Review; Lab 1: Java Refresher [HTML] [PDF] Bailey Ch. 0, 1, 2; Topic Notes: Introduction and Overview; Topic Notes: Java and Object-Oriented Programming Review
September 9 Lecture 2: Associations, Vectors, Generics; Lab 2: Practice with Vectors [HTML] [PDF] Bailey Ch. 3, 4; Topic Notes: Associations; Topic Notes: Vectors; Topic Notes: Generics
September 16 Lecture 3: Complexity and Asymptotic Analysis; Lab 3: Timing Java Bailey Ch. 5; Topic Notes: Complexity and Asymptotic Analysis
September 23 Lecture 4: Analysis Details; Lab 4: Analysis
September 30 Lecture 5: More Analysis; Searching and Sorting; Lab 5: More Analysis Bailey Ch. 6; Topic Notes: Searching and Sorting
October 7 Lecture 6: Review; More Sorting; Lab 6: Sorting and Comparators
October 14 Midterm exam (during class)
October 21 Lecture 7: Iterators; Linked Structures; Lab 7: The Two Towers Problem Bailey Ch. 8; Topic Notes: Iterators; Bailey Ch. 9; Topic Notes: Linked Structures
October 28 Lecture 8: Linear Structures; Ordered Structures; Lab 8: P.S.: It's Just a Stack Bailey Ch. 10; Topic Notes: Linear Structures; Bailey Ch. 11; Topic Notes: Ordered Structures
November 4 Lecture 9: More Ordered Structures; Trees; Lab 9: Best Of Bailey Ch. 12; Topic Notes: Trees
November 11 Lecture 10: Priority Queues; Heapsort; Lab 10: Trees Bailey Ch. 13; Topic Notes: Priority Queues and Heaps
November 18 Lecture 11: Graphs; Lab 11: More Trees, Graphs, and Dijkstra's Road Trip Bailey Ch. 16; Topic Notes: Graphs
November 25 No Class: Happy Thanksgiving!
December 2 Lecture 12: Binary Search Trees; Tree Sort; Balanced Trees; Maps and Hashing Bailey Ch. 14; Topic Notes: Binary Search Trees; Bailey Ch. 15; Topic Notes: Maps and Hashing
December 9 Lecture 13: Course Evaluations; Review; Advanced Topics
December 16 Final Exam (regular class meeting time and place)