While most books on algorithms and data structures use C or C++ for their examples, Data Structures and Algorithms in Java introduces data structures, sorting, and related algorithms using the Java programming language. This worthy reference helps working programmers get the most out of using Java to store and manipulate data efficiently.
The book starts out with simple data structures, such as Java arrays, and looks at a variety of traditional sorting algorithms, such as the quick sort and the bubble sort. Along the way, the author uses clear-cut examples in Java that show the ordering of elements visually in applets. (All source code is included in the accompanying CD-ROM.) The book then looks at linked lists (which can be efficient in Java because references point to objects in memory the way C++ pointers do).
The chapters on working with trees are especially clear. The author introduces and explains all the mathematical concepts needed to understand working with data structures. For example, he explains logarithms from the beginning so the reader will understand how various algorithms will perform with different numbers of elements. The author also includes advanced data structures, such as graphs and weighted graphs, along with sample applets that actually demonstrate what these containers look like and how they store and retrieve data.
The book concludes with a discussion of when to choose particular data structures over others--a topic that is less critical as CPU speed increases. In all, Data Structures and Algorithms in Java is a concise and readable excursion into the world of data structures. The book does an admirable job of showing how a traditional topic in computer science is handled in one of today's most popular programming languages. --Richard V. Dragan [via]