Preface xix
Evansville), Douglas Campbell (Brigham Young University), Karen Davis (Univer-
sity of Cincinnati), Vijay Kumar Garg (University of Texas – Austin), Jim Miller
(University of Kansas), Bruce Maxim (University of Michigan – Dearborn), Jeff
Parker (Agile Networks/Harvard), Dana Richards (George Mason University), Jack
Tan (University of Houston), and Lixin Tao (Concordia University). Without their
help, this book would contain many more technical errors and many fewer insights.
For the second edition, I wish to thank these reviewers: Gurdip Singh (Kansas
State University), Peter Allen (Columbia University), Robin Hill (University of
Wyoming), Norman Jacobson (University of California – Irvine), Ben Keller (East-
ern Michigan University), and Ken Bosworth (Idaho State University). In addition,
I wish to thank Neil Stewart and Frank J. Thesen for their comments and ideas for
improvement.
Third edition reviewers included Randall Lechlitner (University of Houstin,
Clear Lake) and Brian C. Hipp (York Technical College). I thank them for their
comments.
Prentice Hall was the original print publisher for the first and second editions.
Without the hard work of many people there, none of this would be possible. Au-
thors simply do not create printer-ready books on their own. Foremost thanks go to
Kate Hargett, Petra Rector, Laura Steele, and Alan Apt, my editors over the years.
My production editors, Irwin Zucker for the second edition, Kathleen Caren for
the original C
++
version, and Ed DeFelippis for the Java version, kept everything
moving smoothly during that horrible rush at the end. Thanks to Bill Zobrist and
Bruce Gregory (I think) for getting me into this in the first place. Others at Prentice
Hall who helped me along the way include Truly Donovan, Linda Behrens, and
Phyllis Bregman. Thanks to Tracy Dunkelberger for her help in returning the copy-
right to me, thus enabling the electronic future of this work. I am sure I owe thanks
to many others at Prentice Hall for their help in ways that I am not even aware of.
I am thankful to Shelley Kronzek at Dover publications for her faith in taking
on the print publication of this third edition. Much expanded, with both Java and
C
++
versions, and many inconsistencies corrected, I am confident that this is the
best edition yet. But none of us really knows whether students will prefer a free
online textbook or a low-cost, printed bound version. In the end, we believe that
the two formats will be mutually supporting by offering more choices. Production
editor James Miller and design manager Marie Zaczkiewicz have worked hard to
ensure that the production is of the highest quality.
I wish to express my appreciation to Hanan Samet for teaching me about data
structures. I learned much of the philosophy presented here from him as well,
though he is not responsible for any problems with the result. Thanks to my wife
Terry, for her love and support, and to my daughters Irena and Kate for pleasant
diversions from working too hard. Finally, and most importantly, to all of the data
structures students over the years who have taught me what is important and what