Note: All of the books listed on this page can be found on reserve in the Engineering Library,
Carpenter Hall.
Weiss "Data Structures and Problem Solving Using Java (2nd Edition)", Addison-Wesley, 2002
This will be used very extensively in the second 2/3 of the course. Many of the homeworks will be either taken from this, or will have a similar smell
to the problems here. The approach to both the data structures and the graph algorithms taken in class is very close to that taken here. The book
differs from the "... Algorithm Analysis" text by the same author primarily in its organization and in some of the details of the
implementations of the data structures. Often I've used the other book for this course, but the current book is rather more recent. Having ready access
to this book is highly recommended. The companion web site has errata (corrections),
source code to examples, and slides.
Campione, et al
"The Java Tutorial, 3rd edition", Addison-Wesley, 2001
This is a great resource, and gives nice explanations of the old and new material in the first 1/3 of the course. It will also probably be of help for
the Java-specific questions in the rest of the course. This is strongly recommended for those who are a bit nervous about the Java programming content
of the course, or who would like a more detailed, example-driven account. The companion
web site has the errata and answers to exercises.
Campione, et al
"The Java Tutorial Continued", Addison-Wesley, 1999
This is a nice resource, and gives helpful explanations of material which forms useful extensions of what you will see in the course. This text is
certainly an optional one, which those of you planning on going further into Java programming may find valuable. The companion web site has the errata.
Carrano and Savitch
"Data Structures and Abstractions with Java" (1st edition), Prentice Hall (Pearson Education, Inc.), 2003
This book was used in Fall 2003 when the course was taught by Keshav Pingali. The companion
web site has errata (corrections), and source code to examples.
Gries and Gries
"ProgramLive", Wiley & Sons, 2002
This optional text and CD of recorded lectures/animations has been used in CS100J. The CD contains 250 recorded lectures, with synchronized animation,
and material on recursion, interfaces, inner classes, and GUIs. The campus store sells a draft version of this book, along with the CD. There is also a companion web site.