Schedule, Readings, and Assignments

Reading Assignments should be COMPLETED before class time on the date given. Otherwise you will be at a disadvantage in class discussions. It wouldn't bother me if you were to read a bit ahead.

Course Coding Standards  - Refer to these course standards when developing your programs for submission.
Date Topic Assignments
Tue Jan 17
Course Themes and Foundations
Reading: Sections 1.1 to 1.3
Thu Jan 19
References and Arrays HW 1 - Due Jan 24
Tue Jan 24
Equality, Cloning, and Inheritance Reading: Sections 1.4 to 1.5
Thu Jan 26 Computational Complexity - Lab Reading: Section 1.6
HW 2
- Due Jan 31
Tue Jan 31 Software Design Methodology
Abstract Data Types - Lab
Reading: Section 2.1
Project 1 due Feb 09
Thu Feb 02 The Stack ADT Spec and Design Reading: Sections 2.2-2.4
HW 3 - Due Feb 07
Tue Feb 07
Programming with Generics - Lab .
Thu Feb 09 Stack Implementations
Reading: Sections 2.5 to 2.6
Tue Feb 14 Linked Lists Reading: Section 2.7
Project 2 - Due Mar 02
Thu Feb 16 Linked Stack Implementation Reading: Sections 2.8 to 2.10
HW 4 - Due Feb 21
Tue Feb 21 Queue ADT Specification Reading: Sections 4.1 to 4.2
Thu Feb 23 Array Queue Implementation Reading: Sections 4.3 to 4.4
HW 5 - Due Feb 28
Tue Feb 28 Linked Queue Implementation Reading: Sections 4.5 to 4.7
Thu Mar 02 Application of Queues Midterm Review
Tue Mar 07 Midterm Exam .
Thu Mar 09  Instructor at SIGCSE 2017 no class
Tue Mar 14
Simulation
Reading: Sections 4.8 to 4.9
Thu Mar 16
Spring Break no class
Tue Mar 21
Spring Break no class
Thu Mar 23
Spring Break no class
Tue Mar 28 Recursive Thinking Reading: Sections 3.1 to 3.3
Project 3 due Apr 06
Thu Mar 30 Recursion in Java
Reading: Sections 3.4 to 3.8
HW 6 - Due Apr 06
Tue Apr 04
Collection ADT Reading: Ch. 5
Thu Apr 06 List ADT Reading: Ch. 6
HW 7 - Due Apr 11
Tue Apr 11
Binary Search Trees Project 4 due 4/20
Reading: Sections 7.1 to 7.4
Thu Apr 13
Binary Search Tree ADT Reading: Sections 7.5 to 7.10
Takehome Exam: due Apr 18
Tue Apr 18 Implementing Maps with Trees Reading: Sections 8.1 to 8.3
Thu Apr 20 Implementing Maps with Hash Tables Project 5 due 5/03
Reading: Sections 8.4 to 8.7
Tue Apr 25 Quadratic-time Sorting Algorithms Reading: Sections 11.1 - 11.2
HW 8 due 4/27
Thu Apr 27 Recursive Sorting: Mergesort
Reading: Ch. 11.3
Tue May 02 Recursive Sorting: Quicksort
  The Sound of Sorting
Reading: Ch. 11.4 to 11.5
Fri May 05 Final Exam - review sheet - Solutions Folder 9:00 am

For your consideration...
The Language of Science is Math How Algorithms Shape the World Visualizing Our Humanity Software As Art