CS 136:
Data Structures and Advanced Programming
SCHEDULE

Spring, 1998

Please look over the material in the reading assignment before each lecture as I will not lecture on everything in the reading assignments.

In the reading assignments in the schedule below, B stands for Bailey's Java Structures, while CJ stands for Horstmann and Cornell's Core Java 1.1: Vol. 1.

Date Topic Reading
1 2/6 Introduction and Overview B0, CJ 1, 3
2 2/9 Object-oriented languages & Java B1, CJ 4
3 2/11 more Java
4 2/13 Assertions B2
5 2/16 Vectors I B3
6 2/18 Vectors II
2/20 Winter Carnival
7 2/23 Complexity B4.1
8 2/25 Lists B6
9 2/27 More Lists
10 3/2 Extending classes (inheritance) B4.2
11 3/4 Recursion & Sorting B5
12 3/6 More Sorting
13 3/9 Merge Sort
14 3/11 Quick Sort/Linear Structures: Stacks B7.1
3/11 Hour Exam I in Lab
15 3/13 Stack applications B7.3
16 3/15 Queues B7.2
17 3/18 More Queues & GUI programming: Events & AWT CJ 8-9
18 3/20 More events
Spring Break
19 4/6 Iterators B8
20 4/8 Ordered Structures B9
21 4/10 Trees I: Introduction, Specification and Applications B10
22 4/13 Trees II: Applications & Implementation
23 4/15 Heaps and Priority Queues B11
24 4/17 HeapSort
25 4/20 Trees III: Binary Search Trees B12.1-12.3
26 4/22 Trees IV: Balanced trees B12.4-6
27 4/24 Trees V: More Balanced trees.
28 4/27 Graphs I: Specification and Applications B14
29 4/29 Graphs II: More Applications and Implementations
Lab 4/29 Midterm 2
30 5/1 Graphs III: More Applications and Implementations
31 5/4 Graphs IV: More Implementations
32 5/6 Dictionaries B13
33 5/8 More dictionaries, Hashing
34 5/11 Threads in Java
35 5/13 Concurrency, monitors, and impossible problems
36 5/15 Review
CJ: Chapter 11 covers many of Java's built-in data structures such as vectors, hash tables, stacks, queues, etc. We will refer to other chapters of CJ as appropriate for topics such as interfaces, inheritance, and exception handling.

Back to:

  • CS 136 home page
  • Kim Bruce's home page
  • CS Department home page
  • kim@cs.williams.edu