Enter your mobile number 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.
Getting the download link through email is temporarily not available. Please check back later.

  • Apple
  • Android
  • Windows Phone
  • Android

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

Data Structures and Algorithms in C++ 3rd Edition

4.1 out of 5 stars 28 customer reviews
ISBN-13: 978-0534491826
ISBN-10: 0534491820
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.
Have one to sell? Sell on Amazon
Buy used
$14.61
Condition: Used - Good
Condition: Used: Good
Comment: PLEASE READ FULL DESCRIPTION -USED GOOD- This book has been read and may show wear to the cover and or pages. There may be some dog-eared pages. In some cases the internal pages may contain highlighting/margin notes/underlining or any combination of these markings. The binding will be secure in all cases. This is a good reading and studying copy and has been verified that all pages are legible and intact. If the book contained a CD it is not guaranteed to still be included. All items are packed and shipped from the Amazon warehouse.
Access codes and supplements are not guaranteed with used items.
51 Used from $10.60
FREE Shipping on orders over $25.
More Buying Choices
11 New from $53.52 51 Used from $10.60

There is a newer edition of this item:

Free Two-Day Shipping for College Students with Prime Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


The Amazon Book Review
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
click to open popover

Editorial Reviews

About the Author

Adam Drozdek is Associate Professor of Computer Science at Duquesne University.
NO_CONTENT_IN_FEATURE

New York Times best sellers
Browse the New York Times best sellers in popular categories like Fiction, Nonfiction, Picture Books and more. See more

Product Details

  • Hardcover: 776 pages
  • Publisher: Course Technology; 3 edition (September 24, 2004)
  • Language: English
  • ISBN-10: 0534491820
  • ISBN-13: 978-0534491826
  • Product Dimensions: 9.3 x 7.6 x 1.3 inches
  • Shipping Weight: 3 pounds
  • Average Customer Review: 4.1 out of 5 stars  See all reviews (28 customer reviews)
  • Amazon Best Sellers Rank: #896,653 in Books (See Top 100 in Books)

Customer Reviews

Top Customer Reviews

Format: Hardcover
On my bookshelf right now I have 13 books on DS&A using C++. Every time I am in need of a new type of data structure or algorithm, and quickly scan through each of them to determine which seem to have the most relevant information, and also which have useable source-code. Drozdek's book is almost always the book I end up selecting to learn a new topic.

Without a doubt, Drozdek's DS&A book is the most complete and well-written of its kind. It includes a chapter of graphs, which many books surprisingly omit. Also, as of the 3rd edition, it includes a chapter on string matching. As far as I know, this is the *only* C++ DS&A book to dive into this subject.

Surprisingly (because of such a broad-scoped book), the material presented in the string matching chapter is modern and incredibly useful. I found the coverage of suffix tries to be excellent. According to Professor Drozdek (via email correspondence), this chapter is actually a compressed version of what was to be an entire C++ book on string matching. Apparently no publisher would touch such a 'specialized' book. How short-sighted of them!

I work in a research-intensive company focused on developing cutting-edge algorithms to solve difficult modern problems. We do the majority of our coding in C++, which is what originally attracted me to Drozdek's book. Since then, I have referred several colleagues to this book, all of which now use it regularly and are loving it.

My only complaint about this book is that it doesn't discuss primality or random-number generation at all. So many algorithms rely heavily on one or both of these, so I find it strange that this book (and most others) completely ignore them.
Read more ›
4 Comments 49 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 Verified Purchase
This book was used in my Junior-level Advanced Data Structures and Algorithms course. This was the first semester that we used this book and people seemed to like it. Apparently, the old textbook for my class had too much code and not enough explaination. The author presents most of the algorithms in pseudo-code as apposed to a full implementation, but the code exaples are plentiful.
This book will get you learning advanced topics in data structures and algorithms in no time. I learned a lot from this book, and read the first 10 chapters. The scope of topics discussed is large and is presented in top-down fashion. There were even several topic areas that we didn't have time to spend on, like self-organizing lists, networks, self-balancing trees, data compression, and garbage collection.
I was tempted to only give 4 stars in this review because there are a painful number of typos/errors in this text. I was usually able to see beyond the errors, but it made it more difficult than it should have been. A new edition should seriously address this.
A full grasp of C++ is necessary to read through this book, but that should be given when studying general data structures and algorithms. A C++ reference will be very helpful when doing programming assignments because this is not a book on the language.
This book will probably always be on my shelf. Even though all of the code is in C++, which is not eternal, it does not rely heavily on the language. Most of the algorithms are given in pseudo-code, and the data structures are developed independent of the laugage choice. I still plan on reading the sections that we skipped in class. I would recommend this text to any computer science student.
Comment 25 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 Verified Purchase
Although I have bought this book for its C++ emphasis for DSA, I have found it very good at teaching DSA itself. It has very clear explanations, well chosen examples, and depth enough coverage with along clear and easy to understand code illustrations in C++. The book teaches the topics in an incremental manner by making connections among different related DS and algorithms, which are helpful in understanding the theory.

Its layout for teaching a topic consists of three parts: 1) Introducing the data structure or algorithms with an informal language. It relates it with other similar ones, and explains the differences. 2) It shows C++ implementation (it does not have C++ codes for all DS and A's; however, I think what it has is enough for such a book) and explanations, even some alternative implementations. 3) It has complexity analysis for the algorithm, and any drawbacks. Drozdek has concluded the each chapter with an case study and provides full implementation in C++.

I have extensively studied Cormen's book of "Introduction to Algorithms", which I really like, however, this book is much better at teaching the fundamentals of the DSA topics and has better figures although Cormen's book is more in-depth and has more topics covered, and more academic. If you are looking at more implementation of the DSA with some in-depth theory, Drozdek's book is more useful. If you need more academic study on DSA, Cormen's book would be more helpful (in fact, I suggest both of them).

Another thing I like in this book is its chapter for Memory Management. Although this is an OS topic, it covers it since many DSA requires dynamic memory allocations, and I think it is good at teaching the basics of data structures and algorithms used in memory management.
Read more ›
Comment 9 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

Most Recent Customer Reviews