Class Schedule

Note: this is a tenative schedule. I think we will follow it pretty closely, but it is subject to change as the semester goes on to allow opportunity for adaptation.

Week Date Topic Reading Assignment
1 Feb 5 Hello, CSCI151! Lab 0 [No Lab Meeting] (Due 2/11)

Week 1 Reflection (Due 2/12)

Questionnaire (Due 2/12)
Feb 7 Introduction to Java JfPP: 1.4-1.7 (Ungraded)
Feb 9 Introduction to Java
2 Feb 12 Object-Oriented Programming JfPP: 1.8-1.11 (Ungraded) Lab 1 (Due 2/18)

Week 2 Reflection (Due 2/19)
Feb 14 Object-Oriented Programming
Feb 16 Inheritance
3 Feb 19 Arrays and Generics Lab 2 (Due 2/25)

Week 3 Reflection (Due 2/26)

Anonymous Checkin Survey (Optional)
Feb 21 Collections and Iterators 1.1-1.5
Feb 23 Array Lists 2.1-2.2
4 Feb 26 Array Lists Lab 3 (Due 3/3)

Week 4 Reflection (Due 3/4)
Feb 28 Array Lists and Debugging
Mar 1 JUnit Tests and Linked Lists 3.1-3.4
5 Mar 4 Linked Lists 3.5-3.8 Lab 4 (Due 3/10)

Week 5 Reflection (Due 3/11)
Mar 6 Linked Lists
Mar 8 Complexity 4.1-4.3
6 Mar 11 Complexity 4.4-4.5 No Lab

Week 6 Reflection (Due 3/18)

Anonymous Checkin Survey (Optional)
Mar 13 Midterm Exam Review
Mar 15 Midterm Exam
7 Mar 18 Queues 2.4, 3.13-3.14 Lab 5 (Due 3/31)

Week 7 Reflection (Bonus, Due 4/1)
Mar 20 Stacks 2.3, 3.11-3.12
Mar 22 Recursion 5.1-5.2, 4.6
Spring Break
8 Apr 1 Trees 6.1-6.2 Lab 6 (Due 4/7)

Week 8 Reflection (Due 4/8)
Apr 3 Trees
Apr 5 Binary Search Trees 6.3-6.6
9 Apr 8 Binary Search Trees 6.7-6.10 Lab 7 (Due 4/14)

Week 9 Reflection (Due 4/13)

Anonymous Checkin Survey (Optional)
Apr 10 Balanced Trees (AVL Trees) 7.1-7.3
Apr 12 Priority Queues (Heaps) 9.1-9.2
10 Apr 15 Priority Queues (Heaps) 9.3-9.4 Lab 8 (Due 4/21)

Week 10 Reflection (Due 4/22)
Apr 17 Priority Queues (Heaps)
Apr 19 Sets and Maps 8.1-8.3
11 Apr 22 Hashtables 10.1-10.4 Lab 9 (Due 4/28)

Week 11 Reflection (Due 4/29)

Anonymous Checkin Survey (Optional)
Apr 24 Hashtables 10.6-10.9
Apr 26 Graphs 11.1-11.2
12 Apr 29 Graphs 11.3-11.4 Lab 10 (Due 5/5)

Week 12 Reflection (Due 5/6)
May 1 Graph Search Algorithms 11.5-11.8
May 3 Graph Search Algorithms 11.9-11.10
13 May 6 Graph Search Algorithms No Lab
May 8 Advanced Topics
May 10 Final Day
Final Exam: Thursday May 16 from 7:00-9:00 PM