DataStructures and Algorithms in Java, Second Edition is designed to be easy to read and understand although the topic itself is complicated. Algorithms are the procedures that software programs use to manipulate data structures. Besides clear and simple example programs, the author includes a workshop as a small demonstration program executable on a Web browser. The programs demonstrate in graphical form what data structures look like and how they operate. In the second edition, the program is rewritten to improve operation and clarify the algorithms, the example programs are revised to work with the latest version of the Java JDK, and questions and exercises will be added at the end of each chapter making the book even more useful.
Suggested solutions to the programming projects found at the end of each chapter are made available to instructors at recognized educational institutions. This educational supplement can be found at
www.prenhall.com, in the Instructor Resource Center.
For me, the main advantage of "Data Structures and Algorithms in Java" is the language author uses to describe algorithms. He doesn't use overcomplicated academic language with tons of math. No. Robert uses plain English and tries to give an as simple explanation of an algorithm as possible.
This book is for busy students or programmers who decided to revise algorithms before an interview. This book can be scanned very fast: just read a list of ideas at the end of a chapter, look through code examples. If you find something you don't understand, read the chapter.
On the other hand, if you read it from cover to cover doing all exercises, you will become experienced in algorithms. The book provides not only text explanation and code listings. It contains a Java application with a demonstration how different algorithms and data structures work.
As I've mentioned above, another reason to read this book is a language. It's written in plain English with an extremely clean explanation of algorithms. If you get sleepy after two pages from Knuth's "The Art of Computer Programming", try this one.
Algorithms is a very conservative topic. There are few changes since the book was published. However, Java has changed a lot. There are new syntax constructions in it. There are new approaches how to write good Java code. There are new code styles.
Please, get me right. All code examples in the book are still valid Java code. Nonetheless, it is not a modern Java. I don't want to see such code in production. Why is it important to use latest approaches in code examples? Because this kind of books is read mostly by students and junior programmers. They copy this style in their projects.
Maybe, it's better to use pseudocode for code examples like Knuth and Cormen do. Of course, it adds extra complexity for students. In this approach, they should translate pseudocode to a usual programming language. In any case, it increases chances that students learn how to use their programming language in a proper manner.
Many students view data structures and algorithms as difficult to understand, but this book thoroughly demystifies them. Working in Java, Robert Lafore presents each essential data structure and algorithm, using clear and simple example programs accessible through a Web browser-based "Workshop Applets." These programs demonstrate graphically exactly what each data structure looks like and how it works.
Coverage includes: arrays, stacks, queues, simple and advanced sorts, linked lists, recursion, binary trees, red-black trees, 2-3-4 trees, external storage, hash tables, heaps, weighted graphs, and more. For this edition, Lafore has rewritten each program to improve its operation, clarify the algorithms it illustrates, and reflect the latest versions of the Java 2 SDK. Lafore has also added brand-new questions and exercises at the end of every chapter. The result: students gain deep mastery over today's best practices and approaches for manipulating virtually any form of data with Java.
Robert Lafore has degrees in Electrical Engineering and Mathematics, has worked as a systems analyst for the Lawrence Berkeley Laboratory, founded his own software company, and is a best-selling writer in the field of computer programming. Some of his current titles are C++ Interactive Course and Object-Oriented Programming in C++. Earlier best-selling titles include Assembly Language Primer for the IBM PC and XT and (back at the beginning of the computer revolution) Soul of CP/M.
This practical introduction to data structures and algorithms can help every programmer who wants to write more efficient software. Building on Robert Lafore's legendary Java-based guide, this book helps you understand exactly how data structures and algorithms operate. You'll learn how to efficiently apply them with the enormously popular Python language and scale your code to handle today's big data challenges.
Throughout, the authors focus on real-world examples, communicate key ideas with intuitive, interactive visualizations, and limit complexity and math to what you need to improve performance. Step-by-step, they introduce arrays, sorting, stacks, queues, linked lists, recursion, binary trees, 2-3-4 trees, hash tables, spatial data structures, graphs, and more. Their code examples and illustrations are so clear, you can understand them even if you're a near-beginner, or your experience is with other procedural or object-oriented languages.
Data Structures & Algorithms in Python is packed with examples, review questions, individual and team exercises, thought experiments, and longer programming projects. It's ideal for both self-study and classroom settings, and either as a primary text or as a complement to a more formal presentation.
If it says "On Our Shelves Now" above the "Add to Cart" button, we have it in stock. All other titles will have to be special ordered. The online inventory display is updated every 4 hours. If you wish to check the actual in store stock, please call
319-337-2681 or 1-800-295-BOOK (2665) during store hours.
3a8082e126