CS 201

This is a rough schedule, subject to change. Unless otherwise noted, assignments are due at 10 p.m. on the day listed. The readings are not generally long, and I expect them to be done before class. To reinforce this, you are expected to post a question or comment (or answer to another question) from the reading prior to 8 am on moodle (this is part of your course grade). This will also help me focus the class.

Notes can be found here. Code from class can be found here.

Class # Date Topics Assigned Reading Assignment Due at 10 p.m.
1 Monday 9/16 Class intro    
2 Wednesday 9/18 Intro to Java Java4Python “Let’s look at a Java Program” and “Data Types” through (and including) “String” - Installing Java and IDE  
3 Friday 9/20 Intro to Java Java4Python “Conditionals”, “Loops and iteration”, “Defining Classes in Java” up to (and not including) “Abstract Classes” Python to Java Comparison
4 Monday 9/23 Bags (Chapter 1-2) Chapter 1 (don’t get bogged down in UML) -> 1.14 Java Lab and Pair Survey
5 Wednesday 9/25 Bags ctd, Generics in Java Chapter 2.0 -> 2.12  
6 Friday 9/27 Bags ctd, Exceptions in Java Chapter 3.0 -> 3.9 Sticks parts 1 and 2
7 Monday 9/30 Effeciency and Complexity Chapter 4.0 -> 4.10 Sticks part 3
8 Wednesday 10/2 Stacks Chapter 5.0 -> 5.4 Complexity PSet
9 Friday 10/4 Queues Chapter 7.0 -> 7.4 Due Sunday at 10 Lisp Without Nested Parentheses
10 Monday 10/7 Taking a breath No reading (was: Chapter 9) Lisp With Nested Parentheses
11 Wednesday 10/9 Exam 1    
12 Friday 10/11 Lists and Iterators Chapter 10.0 -> 10.10 Exam 1 back
13 Monday 10/14 Recursion Chapter 9.0 -> 9.7  
14 Wednesday 10/16 More Recursion Chapter 9.7 -> 9.12  
15 Friday 10/18 Mutable Objects, Inheritance, Dictionaries Chapter 20.0 -> 20.6  
16 Monday 10/21 Break    
17 Wednesday 10/23 Hashing Chapter 22.0 -> 22.4 Recursion Lab
18 Friday 10/25 Hashing (Aside: tricks for interviews) / (IMDB Lab?) Chapter 23.0 -> 23.6  
19 Monday 10/28 Trees Chapter 24.0 -> 24.11  
20 Wednesday 10/30 Cloning and Binary Search Trees Chapter 25.0 -> 25.3 Lab (Sunday at 10pm, graded on completion of all parts)
21 Friday 11/1 Balanced Search Trees 27.0 -> 27.4 Balanced Tree PSet (Sunday at 10pm)
22 Monday 11/4 Exam 2   Exam 2 makeup
23 Wednesday 11/6 Heaps 24.32 -> 24.34  
24 Friday 11/8 Sorting Chapter 15 (Long and some may be familiar from intro, feel free to skim) Heaps (Sunday at 10pm)
25 Monday 11/11 Sorting Chapter 16 (Long feel free to skim)  
26 Wednesday 11/13 Graphs 29.0 -> 29.13 Sorting PSet
27 Friday 11/15 More Graphs 30 -> 30.9  
28 Monday 11/18 Course Wrap Up    
29 Wednesday 11/20 Exam 3   Final Project (due end of finals period)