Please look over the material in the reading assignment before each lecture as
I will not lecture on everything in the reading assignments. As this is the
first time this course is being taught in this fashion, the syllabus should be
seen mainly as wishful thinking. We'd rather do things well than stay exactly
on the syllabus, though in fact I hope to go somewhat faster than the syllabus
indicates. A syllabus for the second half of the course will be handed out
after spring break.
|
Date |
Topic |
Reading |
1 |
2/7 |
Introduction and Overview |
B1 |
2 |
2/10 |
Object-oriented languages &
Java |
B2, AG1-2 |
3 |
2/12 |
more Java |
AG5-6 |
|
2/14 |
|
4 |
2/17 |
Applets and event-driven programming
|
5 |
2/19 |
More applets |
6 |
2/21 |
Mice, Keys, Arrays, and Strings |
|
7 |
2/24 |
Pre- and post-conditions, Vectors |
B3-4, AG12.4 |
8 |
2/26 |
Vectors/Complexity |
9 |
2/28 |
Complexity |
B5 |
10 |
3/3 |
Lists |
B6 |
11 |
3/5 |
More Lists |
B6, AG3-4 |
12 |
3/7 |
Lists, Design, and Stacks
|
13 |
3/10 |
Stacks |
B8.1-8.2 |
14 |
3/12 |
Stacks |
B8.1-8.2, AG12.5 |
15 |
3/14 |
Recursion and Induction |
16 |
3/17 |
Recursion and Sorting |
17 |
3/19 |
More sorting |
|
18 |
3/21 |
Sorting and queues |
B8 |
| |
Spring Break |
|
19 |
4/7 |
Iterators |
B9, AG12.2-3 |
20 |
4/9 |
Ordered Structures |
B10 |
21 |
4/11 |
Trees I: Introduction, Specification and Applications
|
B11 |
22 |
4/14 |
Trees II: Applications & Implementation |
|
23 |
4/16 |
Trees III: Implementation |
|
24 |
4/18 |
Heaps, Priority Queues, and HeapSort |
B12 |
25 |
4/21 |
Trees III: Binary Search Trees |
B13.1-4 |
26 |
4/23 |
Trees IV: Balanced trees |
B13.5-8 |
27 |
4/25 |
Trees V: More Balanced trees. Graphs |
|
28 |
4/28 |
Graphs I: Specification and Applications |
B15 |
29 |
4/30 |
Graphs II: More Applications and Implementations |
|
Lab |
4/30 |
|
|
30 |
5/2 |
Graphs III: More Applications and Implementations |
|
31 |
5/5 |
Graphs IV: More Implementations |
|
32 |
5/7 |
Dictionaries |
B14.1-2 |
33 |
5/9 |
More dictionaries, Hashing I |
B14.3-5 |
34 |
5/12 |
Threads in Java |
AG9 |
35 |
5/14 |
Concurrency, monitors, and impossible problems
|
AG9 |
36 |
5/16 |
Review |
|
Back to: