Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Data Structures and Problem Solving Using Java (4th Edition) 4th Edition

2.8 out of 5 stars 39 customer reviews
ISBN-13: 978-0321541406
ISBN-10: 0321541405
Why is ISBN important?
ISBN
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Trade in your item
Get a $77.98
Gift Card.
Have one to sell? Sell on Amazon
Rent On clicking this link, a new layer will be open
$72.44 On clicking this link, a new layer will be open
Buy used On clicking this link, a new layer will be open
$120.72 On clicking this link, a new layer will be open
Buy new On clicking this link, a new layer will be open
$134.13 On clicking this link, a new layer will be open
More Buying Choices
19 New from $134.13 27 Used from $116.61
Free Two-Day Shipping for College Students with Prime Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Windows10ForDummiesVideo
Windows 10 For Dummies Video Training
Get up to speed with Windows 10 with this video training course from For Dummies. Learn more.
$134.13 FREE Shipping. Temporarily out of stock. Order now and we'll deliver when available. We'll e-mail you with an estimated delivery date as soon as we have more information. Your account will only be charged when we ship the item. Ships from and sold by Amazon.com. Gift-wrap available.
click to open popover

Frequently Bought Together

  • Data Structures and Problem Solving Using Java (4th Edition)
  • +
  • Introduction To 80X86 Assembly Language And Computer Architecture
  • +
  • Linear Algebra and Its Applications (5th Edition)
Total price: $455.62
Buy the selected items together

Editorial Reviews

From the Back Cover

This book provides a practical introduction to data structures with an emphasis on abstract thinking and problem solving, as well as the use of Java. It does this through what remains a unique approach that clearly separates each data structure's interface (how to use a data structure) from its implementation (how to actually program that structure). Parts I (Tour of Java), II (Algorithms and Building Blocks), and III (Applications) lay the groundwork by discussing basic concepts and tools and providing some practical examples, while Part IV (Implementations) focuses on implementation of data structures. This forces the reader to think about the functionality of the data structuresbeforethe hash table is implemented.

Primitive Java; Reference Types; Objects and Classes; Inheritance; Algorithm Analysis; The Collections API; Recursion; Sorting Algorithms; Randomization; Applications-Games, Stacks and Compilers, Utilities, Simulation, Graphs and Paths; Inner Classes and Implementation of ArrayList Stacks and Queues; Linked Lists; Trees; Binary Search Trees; Hash Tables; A Priority Queue: The Binary Heap; Advanced Data Structures-Splay Trees, Merging Priority Queues, The Disjoint Set Class

A useful guide for Java programmers that includes lots of sample code and basic theory.

About the Author

Mark Allen Weiss is a Professor in the School of Computing and Information Sciences at Florida International University in Miami Florida. He received his Bachelor's Degree in Electrical Engineering from The Cooper Union in 1983, and his Ph.D. in Computer Science from Princeton University in 1987, working under Bob Sedgewick. He has been at FIU since 1987, and was promoted to Professor in 1996. His interests include data structures, algorithms, and education, and he is most well-known for his highly-acclaimed Data Structures textbooks, which have been used at hundreds of universities worldwide.
NO_CONTENT_IN_FEATURE
The latest book club pick from Oprah
"The Underground Railroad" by Colson Whitehead is a magnificent novel chronicling a young slave's adventures as she makes a desperate bid for freedom in the antebellum South. See more

Product Details

  • Paperback: 1024 pages
  • Publisher: Pearson; 4th edition (October 7, 2009)
  • Language: English
  • ISBN-10: 0321541405
  • ISBN-13: 978-0321541406
  • Product Dimensions: 7.3 x 1.4 x 9.1 inches
  • Shipping Weight: 3.3 pounds (View shipping rates and policies)
  • Average Customer Review: 2.8 out of 5 stars  See all reviews (39 customer reviews)
  • Amazon Best Sellers Rank: #57,341 in Books (See Top 100 in Books)

Customer Reviews

Top Customer Reviews

Format: Hardcover
I am using this book in a class on Data Structures and Algorithms. This book has a lot of material and code in it which makes it good. However, his explanations are terrible. They are ambiguous and unclear. If you can teach yourself from the code, then this is a good book for you. If your looking for clear explanations, look somewhere else.
1 Comment 15 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Hardcover
[A review of the THIRD EDITION 2005]

The book teaches two things. Algorithms that are very useful in computing. And how these can be coded in Java.

The explanation of the algorithms requires a reasonable amount of mathematical sophistication on your part. They all relate to discrete maths, and cover topics like sorting, random number generation and graphs. The complexity of the discussion is less than that in Knuth's "Art of Computer Programming". Perhaps more akin to Sedgewick or Aho's algorithms texts. There is a fair amount of abstraction that you'll have to deal with.

The other task in the book is explaining how Java is well suited in which to code these algorithms. Weiss also makes good use of the Java interface ability. If you think of an algorithm as being implemented in a subroutine [ie. a procedural approach], then the book uses interfaces to let you design a program at a higher level, and making it quite modular and independent of specific implementations of given algorithms.

The book does deal with Java 5. But perhaps the most important aspect of Java used in the book is the interface. So the book is quite germane even if you are using an earlier Java.

But what if you program in another language? Is the book relevant? Quite possibly. Firstly, some other languages, like C#, have interfaces. More importantly, if you regard the algorithms as the most important aspect of the book, and you are a skilled programmer, then coding is the easier aspect.

A remark to a lecturer: If you are teaching a course and are contemplating this book as its text, be careful. Try to ensure that the expected background of your class is compatible with the book. For example, if they will be experienced Java programmers, but have little maths knowledge (and this combination is certainly possible), then the book may not be very useful to them.
Comment 21 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
By L. KENG on November 19, 2005
Format: Hardcover
I got the 2002 edition of this book for a class one and a half year ago. It is a great book. Yes, the book covers some of the basics of Java, then it goes into various analysis, algorithms, implementations, etc. It is not for beginners, and some math background will help tremendously. There is no way we could have covered all the topics in the book. It is simply too rich. It is very well written and contains great explanation. I especially like the Big Oh introduction. I found myself getting even more out of it every time I go back and read it again. Just like everything else in life, repitition is the key.
Comment 11 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Hardcover
This book provides an introduction to algorithm analysis, and data structures and is aimed at an audience with little previous programming experience.
The first four chapters are devoted to preliminaries including a brief overview and explanation of core Java, references, objects,classes, and inheritance.
The second part of the book covers fundamentals of algorithm analysis, data structures, recursion,sorting algorithms, and randomization. Weiss's presentation of these topics includes some theorems and proofs, but is not mathematically rigorous. The example programs are generally clear and concise. The exercises and projects at the end of each chapter are straightforward.
The third part of the book is devoted to applications of the data structures and includes word search puzzles, tic-tac-toe, a balanced symbol checker, file compression, a cross-reference generator, and graphs.
The fourth section is devoted to implementations of data structures. Here is where Weiss's work falls short. Most of the implementions presented are adequate, however, the binary tree traversal code that Weiss supplies in Chapter 17 is not only unimpressive but also exasperating. What should be an elegant, concise algorithm is transformed into an incomprehensible mess. Even a mediocre undergraduate should be ashamed of coming up with something this twisted. More elegant treatments of this subject are provided in Sahni's books.
The appendices,covering Java platforms, operators, library routines, and graphical user interfaces, seemed unnecessary.
In short, the book is adequate only at the introductory level. Serious students and those who require a more detailed and rigorous approach should look elsewhere.
1 Comment 11 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback Verified Purchase
Unfortunately, I cannot say that I much liked this book. The text is very dry, and is not at all fun to read. I was going to try to read it for fun during the summer, but stopped shortly after a few pages. The author's writing style isn't intriguing either. It honestly bugged me how it was written and structured. It's hard to believe that this was published, considering it includes words like "irregardless," which isn't a proper word (ir being a negative, this becomes a double negative, "without without regard"). Luckily, I've been programming long enough that I only needed to refer to it once or twice (and the book didn't help when I did so).
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews


What Other Items Do Customers Buy After Viewing This Item?