Introduction to Algorithms and Data Structures
including meeting time and place, textbooks, etc.
is available in LaTeX,
An updated schedule will
contain the latest updates to homework due dates, lecture topics, etc.
Please check the schedule regularly and keep up on the assigned reading!
I'll try to give a homework assignment every week, due the following
week. This means they'll have to be pretty short, becoming more
ambitious and building on one another as the semester progresses.
What's on the final exam?
I haven't made up the final exam yet, but you will have to
write Java code, so review and memorize the basic syntax.
Here are some self-test questions and a
pointer to my page about Java's
And here is a list of likely kinds of
We've set up a discussion
bulletin board for the class. Please check it every few days, and
post questions or comments there. If you haven't got your username
and password yet, contact me.
I've also set up some forms for entering and viewing
You're invited to use these forms to record defect and time information.
So far not all of the forms are working;
I'll install the rest as I get them debugged.
(For more information about PSP, see the PSP page at
We're doing some of our assignments using the DrJava platform, which
is installed on the N: drive of all the lab computers on campus. This
is a pre-release version of DrJava, so it is not available
for general downloading, and should not be taken beyond
Adelphi University. It also may have more bugs than a fully released
version would, so be prepared for that.
If the bugs get too annoying, our fall-back platform is
BlueJ, which is
somewhat older and more stable. It is available for free
download, and it too is installed on the N: drive of all the lab
computers on campus.
The main textbook for this class is Thinking in Java, by Bruce
Eckel. The first edition should be in the bookstore; the second edition
hasn't been printed yet, but is available online.
Here is a local copy in HTML form
(which entails the occasional formatting glitch); for the Word 97
version, the PDF version, and related information, see the author's Web site.
As a supplementary text, we'll use Watts
Humphrey's Introduction to the Personal Software Process.
Since we'll be discussing many of the same topics we covered last
semester in Scheme, you may want to review them in How
to Design Programs.
My office hours
(in Alumnae Hall 112; if I'm not there, look around the corner in 118)
- Tuesday 3:00-4:00 PM
- Wednesday 9:00 AM - noon
- Thursday 3:00-4:00 PM
- Friday 9:00 AM - noon
Tutor Rob Munster's office hours (at the Learning
If you consistently can't make those times,
please suggest another time by contacting Rob.
- Monday 11:00 AM - 12:20 PM
- Wednesday 11:00 AM - 12:20 PM
- Friday 11:00 AM - 12:20 PM
I've set up a folder for programming examples.
Please read and understand these.
For further information
- Scheme and functional programming
- Java and OOP
- HTML and Web-site authoring
(Warning: you can easily spend much too much
time on this, considering it'll all be obsolete in a year or two!)
- W3C's HTML Page,
where you'll find definitive information about the latest
version of HTML.
- HTML Goodies, a
collection of lot of tutorials and examples of stuff you can
do with HTML.
- Builder.com, a
site containing lots of tips, tricks, and
suggestions for writing better pages and sites.
- Using the Adelphi computer systems
- The Adelphi
Help Desk page
- Computing in general
Stephen Bloch / firstname.lastname@example.org