Schedule, Data Structures and Algorithms -- Fall 2001

Lecture and Seminar: Tuesdays and Thursdays 5:30 -- 7:00 pm, Library 1612

Laboratory: Tuesdays and Thursdays 7:30 -- 9:30 pm, ACC lab (L2610 in the Computer Center).

Last revised Nov 14, 2001. Use your browser's Reload or Refresh button to get the latest version.

Back to course page.


WEEKDATESACTIVITIES, DUE DATES
WEEK 1 Sep. 25 Lecture: Course overview, Java review
Sep. 27 Reading: Bentley, Algorithm Design Techniques
Lecture: Types and expressions in Java, Introduction to Bentley
WEEK 2 Oct. 2 Reading: Bentley (continued)
Lecture: Reading technical papers, Intro. to Big-O analysis

First programming assignment due
Oct. 4 Reading: Bentley (continued)
Lecture: Coding style, logic and control structure

Group presentations: progress reports on Bentley experiment
WEEK 3 Oct. 9 Reading: Bentley (continued)
Lecture: Big-O analysis: math review, growth of functions, estimating big-O
Oct. 11 (Class cancelled due to illness)
WEEK 4 Oct. 16 Reading: Bentley (continued)
Lecture: Big-O analysis (continued)

Bentley code due: your group's algorithm and a driver for that algorithm
Group presentations: Bentley code
Oct. 18 Reading: Bentley, Aha! Algorithms (p. 623 only), Writing Correct Programs (p. 1040-41)
Lecture: Binary search, Introduction to correctness
WEEK 5 Oct. 23 (Class cancelled due to illness)
Oct. 25 Reading: Bentley, Writing Correct Programs (continued)

Reports due: Algorithm comparison
Project proposal due
WEEK 6 Oct. 30 Reading: Loop invariants, correctness, and program derivation (handout)

Quiz: Big-O analysis
Nov. 1 Reading: Loop invariants etc. (continued)
WEEK 7 Nov. 6 Reading: Bentley, How to Sort

Quiz: Boolean expressions, program derivation
Nov. 8 Seminar Reading: Levy, Crypto (pages 10 -- 15, 34 -- 35)

Reference variables in Java, any source, for example:
On to Java, chapter 6, slides 132 - 135, pages 35 - 36
On to Java, chapter 9, slides 188 - 191, pages 51 - 53
On to Java, chapter 27, slides 490 - 497, pages 149 - 152
On to Java, chapter 28, slide 509, pages 157 - 158
or,
Sun tutorial, Data types
Sun tutorial, Creating objects
WEEK 8 Nov. 13 Seminar Reading: Levy, Crypto (pages 66 - 75)

Linked lists in Java
Nov. 15 Seminar Reading: Levy, Crypto (pages 96 -- 107)

References and linked data structures in Java
WEEK 9 Nov. 20 THANKSGIVING BREAK WEEK - NO CLASSES
Nov. 22 THANKSGIVING DAY - NO CLASSES
WEEK 10 Nov. 27 Seminar Reading: Levy, Crypto (pages 240 -- 247)

Language support for data structures: hash tables, awk and perl
Nov. 29 Language support for data structures: linked data structures, Lisp and Scheme
WEEK 11 Dec. 4 Project presentations (see these instructions)
Dec. 6 Project presentations

Project writeups due
Draft self-evaluations collected (not required)
WEEK 12 Dec. 11 EVALUATION WEEK - NO CLASS
Dec. 13 EVALUATION WEEK - NO CLASS

Jon Jacky, jackyj@evergreen.edu