Course Calendar

Below is the calendar for this semester course. This is the preliminary schedule, which may need to be altered as the semester progresses. It is the responsibility of the students to frequently check this web-page for schedule, readings, and assignment changes. As the professor, I will attempt to announce any change to the class, but this web-page should be viewed as authoritative. If you have any questions, please contact me (contact information is available at the course homepage).

Date Topic Assignments Due Readings/Discussions
(do readings before class)
Slides
01/14/19 Review Course syllabus (link)

Textbook, chapter 1.1,2

Exercises - 1.3,4,14,16

Lab 1-Java Warmup (link)

Introduction
01/16/19 Exceptions, Packages, Structures Lab 1 Textbook, Chapter 1.2-5

Exercises - 1.21,27,30,32,34

Java
01/21/19 MLK Day -- No Class
01/23/19 Algorithm Efficiency Lab 2 Textbook, Chapter 1.6

Exercises - 1.5-7,39,41,42,45

Lab 2-Orders of growth (link)

Efficiency
01/28/19 Stacks Textbook, Chapter 2.1-2.3

Exercises - 1.43, 2.4,6,7,8,12,14

Lab 3-Debugging (link)

Lab 3-Code (link)

Interfaces
01/30/19 Stacks Lab 3 Textbook, Chapter 2.3-2.5

Exercises - 2.20,25,27

Stacks
02/04/19 Stack Applications Textbook, Chapter 2.6, 2.9

Exercises - 2.35,37

Lab 4-Auction (link)

Stack Applications
02/06/19 Linked Lists Lab 4 Textbook, Chapter 2.7

Project 1 (link)

Exercises - 2.39,40,41ab

Linked Lists
02/11/19 Linked Stack Textbook, Chapter 2.8, 2.10

Exercises - 2.45

Lab 5-Leaky Stack (link)

Linked Stack
02/13/19 Recursion Lab 5 Textbook, Chapter 3.1-3

Exercises - 3.4-7, 11

Recursion
02/18/19 Recursion on Linked Lists Textbook, Chapter 3.4

Exercises - 3.15

Lab 6-Recursive math (link)

Linked List Recursion
02/20/19 Snow Closure -- Review Lab 6 First Review
02/25/19 Mid-term Exam #1
02/27/19 Recursive Applications Lab 7 Textbook, Chapter 3.5-6

Lab 7-Fractals (link)

Recursive Apps
03/04/19 Spring Break -- No Class
03/06/19 Spring Break -- No Class
03/11/19 Recursion Project 1 Textbook, Chapter 3.7-8

Exercises - 3.28,29,33

Lab 8-Recursion on strings (link)

Project 2 (link)

Recursive cons
03/13/19 Queues Lab 8 Textbook, Chapter 4.1-4

In-class exercise (link)

Exercises - 4.1,4,5,8,9abc,11,19,20

Queues
03/18/19 Queues Textbook, Chapter 4.5

In-class exercise (link)

Lab 9-Queues (link)

Linked Queues
03/20/19 Queue Variations Lab 9 Textbook, Chapter 4.7-8

Variations
03/25/19 Collections Textbook, Chapter 5.1-3

In-class exercise (link)

Lab 10-Collections (link)

03/27/19 Comparable Elements Lab 10 Textbook, Chapter 5.4-5

In-class exercise (link)

Exercises - 5.1,4,6,7,11,15,16,19,23,24,27

04/01/19 Collections Project 2 Textbook, Chapter 5.6-7

Exercises - 5.28

In-class exercise (link)

Lab 11-Version Control

04/03/19 Lists Textbook, Chapter 6.1-2

Exercises - 6.1,3-7,10,13,18, 31

In-class exercise (link)

04/08/19 Review Lab 12-Lists (link)

04/10/19 Mid-term Exam #2
04/15/19 Lists Textbook, Chapter 6.2-5

In-class exercise (link)

Project 3 (link)

Lab 13-Open Source Exploration

04/17/19 Trees Textbook, Chapter 7.1,2

Exercises - 7.3-5,8-13

04/22/19 Easter Break -- No Class
04/24/19 Trees Textbook, Chapter 7.3-6

Exercises - 7.17,18,22,30a,33

Lab 14-Binary Search Trees (link)

04/29/19 Trees Textbook, Chapter 7.7-10

Exercises - 7.39ae,40cd,42-44,46

05/01/19 Review Project 3
05/06/19 Final Exam - 18:00-20:30