Schedule subject to change with minimal notice.
All readings are from Lewis and Loftus.
[Week 1]
[Week 2]
[Week 3]
[Week 4]
[Week 5]
[Week 6]
[Week 7]
[Week 8]
[Week 9]
[Week 10]
[Week 11]
Week 1
- Wednesday, September 23:
- Why study Computer Science? Administrivia. What makes a good
program?
- Thursday, September 24 (x-hour):
- What makes a good program, continued.
Reading: Chapter 1.
- Friday, September 25:
- Simple types and values, variables.
Reading: 2.1-2.3.
Week 2
- Monday, September 28:
- Simple types: operators, Scanner class,
type conversions, and other basic stuff.
References and objects. Using builtin classes:
DecimalFormat.
Reading: 2.4-2.6, 3.1, 3.6.
- Wednesday, September 30:
- Using builtin classes: String, Math, Random.
Reading: 2.5, 3.2-3.5, 3.7.
- Thursday, October 1 (x-hour):
- More on operators. Enumerated types. Flow of control: if-else
statements, loops.
Reading: 5.2-5.5, 5.7-5.8.
- Friday, October 2:
- Boolean expressions. Nested loops. Introduction to writing
classes.
Reading: 5.1, 4.1-4.5.
Week 3
- Monday, October 5:
- More on writing classes. Return values from methods.
Reading: 6.7-6.8.
- Wednesday, October 7:
- Problem decomposition.
Reading: 6.1-6.2, 6.4.
Lab #1 out.
- Thursday, October 8 (x-hour):
- In-class quiz.
- Friday, October 9:
- Method call mechanisms. Garbage collection.
Week 4
- Monday, October 12:
- Scope of names. Static methods and static variables.
Wrapper classes and autoboxing.
Reading: 3.8, 6.3.
- Wednesday, October 14:
- Debugging and testing. Graphical applets.
Reading: 2.7-2.9, 6.9.
Lab #1 due.
- Thursday, October 15 (x-hour):
- Open review session.
Exam at 6:00 PM in Filene Auditorium.
- Friday, October 16:
- Objects and applets. Interfaces.
Reading: 6.5, 7.9.
Week 5
- Monday, October 19:
- Events and listeners. Manual animations.
Animations with timers.
Reading: 8.8.
- Wednesday, October 21:
- Arrays. Arrays of objects. Objects containing arrays.
Reading: 7.1-7.3.
Lab #2 out.
- Thursday, October 22 (x-hour):
- Arrays, continued. Multidimensional arrays.
ArrayList class. Generic types.
Reading: 7.6-7.8.
- Friday, October 23:
- No class. Homecoming weekend.
Week 6
- Monday, October 26:
- Graphics using arrays. Inheritance.
Reading: 8.1-8.3, 8.5.
- Wednesday, October 28:
- Inheritance, polymorphism, dynamic binding, and graphics.
Reading: 8.4, 8.7, 9.1-9.3, 9.7.
Lab #2 due. Lab #3 out.
- Thursday, October 29 (x-hour):
- In-class quiz.
- Friday, October 30:
- Object class. GUI components.
Reading: 3.9-3.10, 4.7-4.9.
Week 7
- Monday, November 2:
- More on GUI components. Recursion.
Reading: 5.10-5.11, 11.1-11.3.
- Wednesday, November 4:
- More recursion.
Reading: 11.4.
Lab #3 due. Lab #4 out.
- Thursday, November 5 (x-hour):
- Open review session.
Exam at 6:00 PM in Filene Auditorium.
- Friday, November 6:
- Swing: containers, components, and layout managers.
Reading: 6.11-6.13, 8.6.
Week 8
- Monday, November 9:
- Interval bisection. Case study: Amortizing a loan.
- Wednesday, November 11:
- Searching: linear search, binary search.
Reading: 9.5.
Lab #4 due. Lab #5 out.
- Thursday, November 12 (x-hour):
- Searching: binary search. Orders of growth.
- Friday, November 13:
- Sorting: selection sort, insertion sort.
Reading: 9.4.
Week 9
- Monday, November 16:
- Sorting: merge sort, quicksort.
- Wednesday, November 18:
- Sorting: heapsort and columnsort.
Lab #5 due. Lab #6 out.
- Thursday, November 19:
- Columnsort.
- Friday, November 20:
- Columnsort. Priority queues. Data structures: doubly linked
lists.
Week 10
- Monday, November 23:
- Data structures: Doubly linked lists and singly linked
lists.
Reading: 12.1-12.2 (skim; we'll use a different structure).
- Wednesday, November 25 and Friday, November 27:
- No class. Thanksgiving break.
Week 11
- Monday, November 30:
- Iterators and ADTs.
- Wednesday, December 2:
- Thinking in parallel.
Lab #6 due.
- Thursday, December 3
- Exam review session, 10:00 am to 12:00 noon, in 008
Kemeny.
- Sunday, December 6:
- Final exam 3:00-6:00 PM, in 108 Kemeny.
Thomas H. Cormen <thc@cs
.dartmouth.edu>
Last modified: Sat Nov 21 18:49:32 2009