| Class number | Date | Reading due S&W == Stanat & Weiss |
Homework due at the beginning of class |
Class content (approximate) |
| 1 | Jan. 10 |
Red tape; why Java? | ||
| 2 | Jan. 15 |
S&W Chap 1 | Write 3 abstractions and one contract. |
Java: rules for good programs |
| 3 | Jan. 17 |
Program 0 (optional) | Java review 2: Classes, objects & references |
|
| 4. | Jan. 22 (Previous day is holiday) |
Java review 3: Exceptions | ||
| 5 | Jan. 24 | Java review 4: Building new classes from old |
||
| 6 | Jan. 29 |
S&W: Chap 2; | Logic, assertions |
|
| 7 | Jan. 31 |
Quantifiers | ||
| 8 | Feb. 5 |
Axiom of assignment |
||
| 9 | Feb. 7 |
Program 1 4:30 pm | Loop invariants |
|
| 10 | Feb. 12 | S&W Chap 3 | More invariants; Dutch flag |
|
| 11 | Feb. 14 | Recursion |
||
| 12 | Feb. 19 |
Written assignment 1 (S&W chapter 2) | Hanoi; Chinese rings |
|
| 13 | Feb. 21 |
Exam 1 (see below) | ||
| 14 | Feb. 26 |
S&W: Chap 4, 5, & 6 | Payroll program, part 1, 4:30 pm |
Recursion; files |
| 15 | Feb. 28 |
S&W Chap 7 | Algorithm analysis | |
| 16 | Mar. 4 |
S&W Chap 8 | Q(n2) sorting | |
| 17 | Mar. 6 (break follows; ACC Tour. Mar 13-16) |
Program 2 (assertions), 4:30 pm | Q(n
log
n) sorting |
|
| 18 | Mar. 18 |
S&W Chap. 9 | Written assignment 2 (S&W chapter 3) |
Q(n) sorting |
| 19 | Mar. 20 (Good Friday follows) | S&W Chap. 10 | Payroll program part 2, 4:30 pm |
State tax |
| 20 | Mar. 25 |
|
Linked structures | |
| 21 | Mar. 27 |
Program 3 (recursion) 4:30 pm | Linked structures, options | |
| 22 | Apr. 1 |
S&W Chap 11 | Brute force, backtracking | |
| 23 | Apr. 3 (Final 4, Apr 5, 7) |
Written assignment 3 (optional) |
Backtracking with pruning |
|
| 24 | Apr. 8 |
Payroll program part 3, 4:30 pm |
Backtracking with pruning |
|
| 25 | Apr. 10 |
Exam 2 (see below) | ||
| 26 | Apr. 15 |
S&W Chap 13 | Trees (Joyce Kilmer) | |
| 27 | Apr. 17 |
Program 4 (linked lists), 4:30 pm | Finite state machines (FSM) | |
| 28 | Apr. 22 | S&W Chap 14 | Payroll program part 4, 4:30 pm |
Limits on computing |
| 29 | Apr. 24 | Review for final | ||
| Apr. 25 | Program 5 (backtracking), 4:30 pm | |||
| Final exam | May 6 |
|
8:00-11:00am |
Programs Submit
your programs as follows:
1. Create a JAR file of all the .java files in your program.
2. Submit the JAR file through the course electronic Blackboard
drop
box.
3. Some time before 4:30pm on the due date, drop off a printed
copy of
your program
source at the Computer Science
front
desk. Print on one side
only,
stapled in the upper
left corner.
Homework Write your assignment using MS word. In most cases, you can just edit your answers into the assignment. Submit your Word file to the Blackboard drop box for your section. If you choose not to use Word and Blackboard, write your homework on 8 1/2 x 11 paper, unfolded, and stapled in the upper left corner. If you turn in larger paper, I reserve the right to trim it to 8 1/2 x 11 and grade what's left.
Exams
Dates:
Please note the exam dates now.
Content: Each exam will cover everything covered
in the course
so far.
Exam 1: everything up to, but not
including,
recursion.
Exam 2: everything up to, but not
including
linked lists.
Format: Closed book, notes, computers, etc. You will write
on the exam
itself. All you need to bring is
something to write with. Exams
will
take
the
full 75 minutes.
Final exam Content:
the entire course, but with slight emphasis on material that was
not
covered
on previous
exams. Note that finite state machines
(Chapter 14) may not be
covered
in class, but a
general understanding
of FSMs will be assumed on the final.
Format: closed books, notes, etc. You will write directly
on the exam
paper, so you need bring only something to write with. The exam
will
be
designed
for about 150 minutes, but you will have the full 180
minutes.
Grades
You will be able to check your progress in the course through
Blackboard. After every program, assignment, and exam, please
verify that the grade we have
recorded
for you agrees
with what's
on your paper.
Save all your graded work until
the
end of the semester.
Course grades
Course
grades will be turned in to the Registrar's office within 72
hours of
the end of the final exam. The Registrar
will post the
grades to the
web where you
can see them. The Department
of Computer Science cannot give
out
grades.