Skip to content
Paperback Java Software Structures: Designing and Using Data Structures Book

ISBN: 0321245849

ISBN13: 9780321245847

Java Software Structures: Designing and Using Data Structures

Select Format

Select Condition ThriftBooks Help Icon

Recommended

Format: Paperback

Condition: Very Good

$7.99
Save $110.41!
List Price $118.40
Almost Gone, Only 1 Left!

Book Overview

KEY BENEFIT This coherent introduction to data structures allows readers to develop high-quality software systems using well-designed collections and algorithms. KEY TOPICS Analysis of Algorithms;... This description may be from another edition of this product.

Customer Reviews

4 ratings

Solid book, great if its what you need

I used this book in my CS Data structures class, its important to note that this book is not a "general" java book, it only deals specifically with Data Structures, so if your a java beginner this is NOT the book for you. The book has large amounts of code and writings about Queues, Stacks, Linked Lists, Iterators, Arrays, and Trees (both binary and bst). I found the sample code helpful when writing, but it dissapointed me that they would never provide a whole class code.

Excellent, but only for the right purpose

This is an absolutely outstanding book, but it depends on your intent. This is not a general purpose Java book. In fact, the Java aspect is almost incidental. This is a data structures and algorithms book. It's intent is to teach core computer science concepts that trace their roots back literally decades, and will hold until the day comes when someone figures out how to exceed the Turing model, which will change life as we know it so substantially that *all* your computer books will become instantly obsolete. In the mean time, if you want to learn Java per se, do not buy this book! If you want to understand the building blocks of computer science, definitely buy this book. It's ability to concisely address all the key concepts is amazing. I teach a computer science class on data structures and algorithms, and I evaluated several books other than this one. At first glance, I did not like this book because it was so easy to read and presented concepts so effectively that I thought it was too lightweight. But as I read it, I was amazed at how well it covered everything, and did it with brevity and clarity. It starts from basic sets and linked structures and makes it all the way through complex trees and graphs. Again, don't get it if just learning Java is your goal, that is definitely not its purpose, but if you want to understand the foundational programming tools of computer science, this book is great.

Great book to have

It's a very good book, and it was useful for me, though am very new to Java.

teaches highly value added skills

All mainstream computer languages implement a common set of data structures and algorithms. If you are a computer science student, you must learn these at a level that you can at least facilely code using them. What language you do it in is probably secondary. Well here, Lewis and Chase instantiate the pedagogy in Java. A good choice. They have updated this second edition so that it uses Java 1.5 (aka Tiger). They assume you have a rough working knowledge of Java. This is not the time or place to go over basic syntax. Though you should already know the basics of object oriented programming, they give an entire chapter to thoroughly discussing how to do so. In this chapter, you should pay close heed to the section on interfaces. More than many other aspects of Java, interfaces help you build modular code. To explicitly reduce the coupling between different classes, where one class might call the other. Instead of doing a direct call, if interfaces are used to mediate this instantiation, it is a huge boost to modular design. My only gripe here with the interface text is that I think it does not stress enough how useful this is. Only when you've tried to do a large project might you fully appreciate using interfaces. Later chapters show you how the base Java comes with a rich assortment of very useful classes. That implement queues, linked lists, lists, stacks, trees and collections. These can match or even exceed what is available on these topics in the C++ Standard Template Library. While poor old C totally lacks them. I suggest also that you scan closely the chapter on hashing. This is a key and fundamental idea in computing. Lets you search a table in logarithmic dependence on its size, instead of linear dependence. Another excellent Java class. If you want to improve your skill in Java, you need to move beyond just knowing the basic syntax and making UIs. Both these leave you exposed to junior programmers or offshore programmers. Whereas having a deep understanding of the book's topics is harder to learn. Gives you more of a barrier against those who do not know this material. More value added skills. Also, one day you might have to code in another language. The skills here are far more portable between languages.
Copyright © 2023 Thriftbooks.com Terms of Use | Privacy Policy | Do Not Sell/Share My Personal Information | Cookie Policy | Cookie Preferences | Accessibility Statement
ThriftBooks® and the ThriftBooks® logo are registered trademarks of Thrift Books Global, LLC
GoDaddy Verified and Secured