Department of Computer Science
Washington and Lee University
CS112 (Winter 2003): Fundamentals of Programming II
Course instructor: Prof. Simon Levy (Parmly 407B, x8419, levys@wlu.edu).
Office hours: MWF 3:00-4:30 and by appointment.
This page: https://simondlevy.academic.wlu.edu/courses/csci-112-fundamentals-of-programming-ii/
Course Requirements
- Prereq: CS111
- Problem sets (written exercises and coding): Though there is no official lab for this course, you will spend much of your time programming (50%).
- Weekly quizzes: Come to class and do the readings! (40%)
- Final exam (10%)
Textbook
K.A. Lambert & M. Osborne (2000) Java: A Framework for Program Design and Data Structures. Brooks/Cole
PROBLEM SETS
Guidelines – please read them carefully and be sure that you understand them.
- Problem Set 1 (due Friday 17 January). Postscript PDF Animal.java Noisy.java Test.java Documentation
- Problem Set 2 (due Monday 27 January). Postscript PDF Tamagochi.java TamaGUI.class Makefile BreezyGUI.jar Documentation
- Problem Set 3 (due Wednesday 05 February). Postscript PDF Tiny.java TinyTest.java Documentation
- Problem Set 4 (due Friday 14 February). Postscript PDF Documentation
- Problem Set 5 (due Friday 07 March). Postscript PDF Documentation lamborne.jar
- Problem Set 6 (due Wednesday 26 March). Postscript PDF SortTest.java Sort.java Documentation
- Problem Set 7 (due Friday 4 April). Postscript PDF HashTest.java Documentation
LECTURE NOTES
06 January 2003 Postscript PDF Intro, Course Outline, Collections
08 January 2003 Postscript PDF Kinds of Collections; Abstract Data Types; Algorithm Analysis
10 January 2003 Postscript PDF Object-Oriented Techniques [One Slide]
13 January 2003 Postscript PDF Implementing a Collection: The Tiny Interface
15 January 2003 Postscript PDF The Tiny Interface, continued
17 January 2003 Postscript PDF The Tiny Implementation
20 January 2003 Postscript PDF The Tiny Implementation: Static Array version
22 January 2003 Postscript PDF Iterators
24 January 2003 Postscript PDF Private classes; Iterator implementation
27 January 2003 Postscript PDF Creating collections from collections; the equals method
29 January 2003 Postscript PDF Working with Java collections
03 February 2003 Postscript PDF Implementing a Collection view
05 February 2003 Postscript PDF Linear Collections I: Stacks
07 February 2003 Postscript PDF Stack Application: Balancing Parentheses
10 February 2003 Postscript PDF Stack Application: Evaluating Postfix Expressions
12 February 2003 Postscript PDF Stack Application: Backtracking in Puzzles and Games
14 February 2003 Postscript PDF Linear Collections II: Queues
24 February 2003 Postscript PDF Queues: Implementations; Backtracking application
26 February 2003 Postscript PDF Priority Queues
28 February 2003 Postscript PDF Linear Collections III: Lists
03 March 2003 Postscript PDF Lists: Doubly-Linked Implementation
05 March 2003 Postscript PDF Sorted Lists
07 March 2003 Postscript PDF Recursion, Searching, Sorting, & Backtracking
10 March 2003 Postscript PDF Tail Recursion & Memoization
12 March 2003 Postscript PDF Searching & Sorting
14 March 2003 Postscript PDF Hierarchical Collections I: Trees
17 March 2003 Postscript PDF Expression Trees
19 March 2003 Postscript PDF Recursion, Grammars, and Parsing
21 March 2003 Postscript PDF Hierarchical Collections II: Binary Search Trees
26 March 2003 Postscript PDF Unordered Collections: Sets, Maps, and Bags
28 March 2003 Postscript PDF Hashing (Hash Maps)
31 March 2003 Postscript PDF Graphs: Introduction
02 April 2003 Postscript PDF Graph Traversals
LINKS