View this PageEdit this PageUploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide

CMPSC 102: Data Structures


Click here to see my office hours and
to schedule appointments
(use "Guest user?" button)

Syllabus

Textbook Webpage Goodrich and Tamassia, Data Structures and Algorithms in Java (2nd ed)

Online Java Documentation

Final exam review solutions, part 2

Final exam information, part 2 (revised 12/12)

Final exam information, part 1

Final exam review solutions, part 1

Homework 8 Information

TryTreeDict.java

TreeDictSkeleton.java

Old in-class example and handout on word frequencies via binary trees

Homework 8

HashDictionary.java

HashComparator.java

StringHashComparator.java

HashDemo.java

Homework 7 Notes

Homework 7

Lab 10

Team.java

Comparator.java

TeamComparator.java

Problem.java

RankTeams.java

teamdata

Homework 6

Notes on homework 6 from Friday, 7 Nov.

GNode.java skeleton

GTree.java skeleton


InorderIterator.java

TryInorderIterator.java

Pascal.java (recursion demonstration)

Homework 5 (REVISED WRITEUP AND DUE DATE)

TreeNode.java

BinaryTree.java

BuildBinaryTree.java

TreeStructureException.java

Oct. 24 Lecture Notes

Lab 8

Lab8Sample.java

Oct. 20 Lecture Notes

ExtendableArray example from Oct. 17

Javadoc documentation for ExtendableArray

TestExtendableArray.java

Lab 7

Homework 4

Data file for homework 4

Previous exercises, handouts, etc.

The Autobiography of Benjamin Franklin (Right click to save this)

General Articles about Java

"The Java Language: An Overview" (from java.sun.com)
"The Java Language Environment: A White Paper" (from java.sun.com)
Other Sun papers about Java
"Java: Slow, Ugly and Irrelevant" by Simson Garfinkel (Salon, Jan. 8 2001)
"Java Fans Fight Back" by Simson Garfinkel (Salon, Jan 18, 2001)
"Java: It's a Good Thing" by Erwin Vervaet (JavaWorld). Reaction to Garfinkel's article
"10 Reasons We Need Java 3.0" by Elliotte Rusty Harold (critical of current version of Java, recommends changes in the language)
"In Anticipation of Tiger" (about the new Java, version 1.5, due out in 2004)

Tutorial Articles about Java

"Types, Classes, and Objects" by Richard G. Baldwin
"The Essence of OOP Using Java, Objects, and Encapsulation" by Richard G. Baldwin (encapsulation, inheritance, polymorphism)
"Learn Java packages in 21 seconds" by Alex Chaffee (1998)

Specialized Topics

HashTable or HashMap -- which is better?
When not to use JOptionPane.showInputDialog() -- "modal dialogs"
Nice Javadoc tutorial (PDF)
Set of slides on Javadoc
"Was Ist Javadoc?" (Learn German while you learn Javadoc!)
Javadoc home page

Miscellaneous Links

The Official Rube Goldberg Web Site
"What Employers Want from Students: a Report from OOPSLA" by Phil Pfeiffer (from SIGCSE Bulletin, 1999)

"CamelCase" is the name given to the style of variable naming used in Java in which words are capitalized and joined together, such as
TestSimulator
and
numberOfEmployees
. It should not be confused with "sticky caps," the anNoYinG StYLe oF RaNDomLy AlTerNaTinG cAsES.

"No one sees farther into a generalization than his own knowledge of details extends." – William James.
I really like this quotation; its truth is plain to me when I see how gradual accumulation of programming experience (say, in Java) makes it easier to understand the sorts of abstractions ("classes," "objects," "inheritance," etc.) that underlie OOP.

This is a new comment – RSR, 8/29

Bob's Demonstration Link

Found the link for a Java Complier and editing tools http://java.sun.com/j2se/1.4.2/download.html
Michael B

A Java Applet which lets you manipulate a Hypercube: Tesseract
Jordan