- Paperback: 617 pages
- Publisher: Silicon Pr; 2 edition (August 2007)
- Language: English
- ISBN-10: 0929306406
- ISBN-13: 978-0929306407
- Product Dimensions: 1.2 x 6 x 8.8 inches
- Shipping Weight: 1.8 pounds (View shipping rates and policies)
- Average Customer Review: 2.9 out of 5 stars See all reviews (25 customer reviews)
- Amazon Best Sellers Rank: #1,471,214 in Books (See Top 100 in Books)
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.
To get the free app, enter your email address or mobile phone number.
Fundamentals of Data Structures in C 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently Bought Together
Customers Who Bought This Item Also Bought
More About the AuthorsDiscover books, learn about writers, read author blogs, and more.
Top Customer Reviews
Most data structures have rigorous (college-level-worthy) proofs for complexity and performance. These proofs are typically required of a student in a graduate level course, and thus, this book could be used for a graduate-level text. Because of this however, some may find this book a little daunting, especially if you just need an introduction to the topic.
The C++ code samples use templates so that the data structures can be generalized and used for any type. Therefore, the C++ code is very reusable. However, the code can sometimes be a bit hard to understand, mostly due to short variable names, and poor in-code comments. This is one of the reasons I didn't give this book 5 stars. Overall though, this book stands out in the crowd.
Part about fundamentals give some description of complexity analisys and performance monitoring. Some sorting algorithms and some basic search algorithms are presented here. This section is not so exhaustive, still useful. It contains descriptions on how to abstract data types.
Part about array and structures explains how aggregate data types can be used to build more complex data types and teach how to manipulate them.
This section is not very useful and it is not projected in a "production environment". Things are explained in a too semplicistic way and don't fit real world data structure construction. This is the sensation you will have all over the book. Data structures explained in this book works only with integers number. In a real world you will not build data structures to store integers only. This approach simplify greatly source code and comprehension on how a particular data structure WORKS, but will not give you a good vision on how a real data structure should be PROGRAMMED. So this book remains more academic than practical. For theoretical explanations about data structures there are more exhaustive books around, like "Introduction to Algorithms" by Cormen, Leiserson and Rivest.
The material presented in this book is complete and updated and surely this is a great reference.Explanations are well given.
So consider five star if you buy this book for understanding how data structures work, only three star if you need this book to have some implementations to look at. Not bad but implementations could have been written in a more robust way.
Aside from that, the book is extremely dry and difficult to read because the text is so boring. It's worse than reading a text on mathematics.
Speaking of mathematics, this book will totally swamp anyone who doesn't have a strong algebra background. The authors assume that the reader uses fairly complex algebraic equations regularly. I'm pretty good with algebra, but a little out of practice since I've been concentrating on my job and learning C++. I find myself spending almost as much time figuring out what their equations mean as I do learning the concepts they're trying to describe.
I would not recommend this book to anyone.
Superficially, this book is about writing programs in C. C is *not* necessarily the best language for learning algorithms and data structures if you have no concept of an algorithm or a data structure. If you are totally new to programming, but really want to get "under the hood" of what the machine is actually doing (with less of a mathematical emphasis), then Assembly Language Step-by-Step: Programming with Linux might be a better starting point. When you want to do things more efficiently than you can in assembly, then it is time to learn C.
In this book, you will learn the conventional ways of writing sorting and searching algorithms, and the structures they operate on. But fundamentally, writing a program involves directing your attention to the most important features of a problem, and why certain algorithms and data structures show up again and again in programming. Programming is about patterns, and the most efficient way to *correctly and unambiguously* describe those patterns, is through mathematics.
I can sympathize with those who gave harsh reviews. If you have not yet acquired the habit of thinking mathematically -- this book is going to be over your head. Go through ...Read more ›
Most Recent Customer Reviews
Can't go wrong with Horowitz - one on my favorite books on Data Structures.Published 1 month ago by JacobeanEra
Difficult book to use for a fundamental undergraduate course. Even my professor had trouble with this cryptic text. It does cure however insomnia.Published 14 months ago by Eric Bailey
The code is in times new roman and unintelligible. Examples are not clear. Even if it's assigned reading don't bother.Published 21 months ago by Amazon Customer
This book is horrible. The example code is poorly written and briefly and poorly explained. Some of the code is not even correct.Published 23 months ago by Tyson Neuroth
I'm really happy now. oh,, almost happy.
Cause, I bought this book with "Grammar in Use intermediate" but... Read more
I bought this for a class I'm taking, it's a pretty good text book and I plan to keep it around. Nothing is perfect though and I still find myself Googling for information. Read morePublished on April 19, 2013 by The Yeknod
This book is absolutely horrendous. The examples are terrible (they leave out critical parts of the code), the explanations and definitions are terrible, the writing style seems is... Read morePublished on October 28, 2011 by Toaster
They took responsibility and refunded the cost of purchase with shipping after a failed delivery. So they are a very reliable store.Published on October 27, 2011 by Deepak Dasarathan