Book ID	Title	Number of Reviews
0262032937	Introduction to Algorithms	61

Author ID	A10CMI5RR4XDIV
Useful Votes	9/10
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.898148148148148	0.0555555555555556	0.0277777777777778	0.0185185185185185
Valuable reference, but not an introduction.
This book claims to be an "introduction" to the study of algorithms, but for comparision, it's used at my university as the textbook for a course for senior undergraduates and beginning graduate students. It's a decent reference book for answering questions like "What's the best algorithm for..." but not for basic questions like "What is an algorithm?" If you're interested in algorithms but think you're not ready for this book, I'd recommend Knuth's "The Art of Computer Programming" for readers that aren't afraid of math and Sedgewick's "Algorithms in C++" for queasier types.

Author ID	A2E3F04ZK7FG66
Useful Votes	9/14
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.967329545454545	0.0170454545454545	0.00852272727272727	0.00710227272727273
THE book for learning the practice and theory of algorithms
An algorithm is nothing more than a set of computational steps that transform a specific input into a desired output. From that definition, there are plenty of books on the market that are "cookbooks" of algorithms and will enable you to do just that - transform specific inputs into outputs, complete with source code, and with no real depth of understanding of your own required. However, to be a computer scientist versus a programmer, you need to know what makes an efficient algorithm, why is a particular algorithm efficient, what kinds of common data structures are involved in various computing problems, how to traverse those data structures efficiently, and a notation for analyzing various algorithms. This book will help you learn all of that. The study of the theory of algorithms is not to be undertaken lightly, and I don't recommend you attempt to self-study such a complex subject with such strong mathematical underpinnings. In fact, this book is really aimed at graduate computer science students and is often on the reading list of Ph.D. qualifying examinations in that field. For students of graph theory, you might find your knowledge solidly supplemented by the material in chapters 22 through 26 on graph algorithms. The last section of the book, "Selected Topics", goes over various specific algorithms from many fields using the knowledge of algorithm design and analysis you have learned up to this point in the book. Throughout, the text is very clear, and there are plenty of instructive diagrams and pseudocode.  One of the most interesting parts of the book is the chapter on NP-completeness. This is the study of problems for which no efficient algorithm has ever been found. These problems are interesting for two reasons. The first being that even though an efficient algorithm has never been found, there is no proof that one cannot exist. Second, if an efficient algorithm exists for one of them, then an efficient algorithm exists for all. Thus, if you are ever called upon to write an efficient algorithm for an NP-complete problem, you will be involved in a long fruitless search if you do not recognize the problem as NP-complete. If you can show the problem is NP-complete, you can go about producing an algorithm that gives a good solution, but not the best possible solution. This kind of knowledge is what separates a computer scientist from a mere programmer, and is one of many reasons to study this book's contents. I highly recommend this book to anyone who truly wants to be called a computer scientist.  To get the most from this book you should already be familiar with discrete mathematics and combinatorics, as this book makes heavy use of these subjects. Because this book contains no solutions to any of the exercises, might I suggest "Problems on Algorithms" by Ian Parberry as a companion to this book. It has a little bit of tutorial and a lot of exercises, many unsolved, but some with hints and others with solutions. Also, for more basic material, you might look at "Schaum's Outline of Discrete Mathematics". It's very inexpensive and can almost stand alone as a tutorial on the mathematics you need to know to succeed at understanding this book. I notice Amazon does not show the table of contents, so I do that here:  Foundations  1 The Role of Algorithms in Computing  2 Getting Started  3 Growth of Functions  4 Recurrences  5 Probabilistic Analysis and Randomized Algorithms  II Sorting and Order Statistics  6 Heapsort  7 Quicksort  8 Sorting in Linear Time  9 Medians and Order Statistics  III Data Structures  10 Elementary Data Structures  11 Hash Table  12 Binary Search Trees  13 Red-Black Trees  14 Augmenting Data Structures  IV Advanced Design and Analysis Techniques  15 Dynamic Programming  16 Greedy Algorithms  17 Amortized Analysis  V Advanced Data Structures  18 B-Trees  19 Binomial Heaps  20 Fibonacci Heaps  21 Data Structures for Disjoint Sets  VI Graph Algorithms  22 Elementary Graph Algorithms  23 Minimum Spanning Trees  24 Single-Source Shortest Paths  25 All-Pairs Shortest Paths  26 Maximum Flow  VII Selected Topics  27 Sorting Networks  28 Matrix Operations  29 Linear Programming  30 Polynomials and the FFT  31 Number-Theoretic Algorithms  32 String Matching  33 Computational Geometry  34 NP-Completeness  35 Approximation Algorithms  VIII Appendix: Mathematical Background  A Summations  B Sets, Etc.  C Counting and Probability

Author ID	A2TZ6DETANJ80Q
Useful Votes	24/26
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.945378151260504	0.0210084033613445	0.0168067226890756	0.0168067226890756
The definitive reference for data structures and algorithms
While working as a software engineer, my supervisor, who also wrote programs for a living, had a book on his shelf, "Data Structures and Algorithms", written by Horowitz and Sahni. It was one of the most tattered-looking hardback books I had ever seen! (a true indicator of the worth of a book). Moreover, I view the Cormer, Leiserson, Rivest book as an updated version of this book, in that it has the same core content of data structures and algorithms, and presents the algorithms in psuedocode instead of a GPL like C++. I find this book, however, not only better written than its predecessor, but also containing a number of advanced chapters (e.g. computational geometry and parallel computation) that reflects the explosion of the study of algorithms over the past 20 years. If I had to choose one book on data structures and algorithms to have on my shelf it would be this one, as no other modern text compares with it in terms of its breadth and depth of the subject material. However, for those students or practitioners who prefer to learn about data structures and algorithms within the context of a progromming language, I recommend Mark Weiss's book on data structures and algorithms, both in Java and in C++. His book seems less developed and rigorous, but he gives good examples, explanations, and more practical insights.

Author ID	A3DQWFWINN3V5A
Useful Votes	24/24
Rating	3
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.986717267552182	0.00379506641366224	0.00759013282732448	0.00189753320683112
Academic Masterpiece, Practical White Elephant
First, the good part:  this book is an intellectual and academic masterpiece.  It would be great for people doing algorithm or other Computer Science research.  It's an amazing synthesis of much of the core of a Computer Science degree with Discrete Math and Probability.  Oddly, it's more like a math book than a CS book.  Now, the not so good part:  for implementers (i.e., programmers), this book is not all that useful.  The biggest technical negative is that, for the most part, the authors ignore memory hierarchies and treat everything as if it were running on a computer with infinite cache memory and having everything already loaded there.  Granted, the authors spend a huge chunk of time teaching the readers how to do (and prove) cost (or efficiency) analysis on algorithms.  So, readers should be able to figure out actual, real-world efficiencies on their own (although there's nothing in this book to illustrate how to modify the analysis to do that).  But, since memory hierarchies drastically change the relative efficiencies of algorithms, they should be considered in the original algorithmic analysis and ranking.  From a methodology point of view, another problem is that the authors assume the readers have full knowledge of the algorithms covered in the book.  In general, they don't even try to teach the actual algorithms, how they came about, the reasoning behind them, or any method of thought for coming up with other, similar, algorithms.  Instead, the authors merely focus on proving the correctness and cost of the pre-existing algorithms.  It's like the authors present a beautiful, theoretical, shiny structure sparkling and spinning in the ether.  They then explain what parts make up this structure, how they're put together, and how long it takes to use such a structure.  But, what would be far more useful is if the authors started from the more common position where someone has a problem and a big pile of parts.  They need to know how to determine the best thing to make from all those parts to fix the problem, and how to put it together in the most efficient way.  Essentially, it's the difference between a reference book and a teaching book.  On the level of irritations, the authors leave a LOT of core stuff as exercises for the student.  This is bad enough on its own (and is one of my pet peeves in the math world).  However, making this even worse is the fact that NONE of the exercises are answered.  So, firstly, that makes these exercises useless to self-studyers (i.e., me).  And, secondly, that makes the "proof is left as an exercise to the student" core parts of the book entirely inaccesible to self-studyers.  I can't emphasize enough that academically and intellectually, the scope and depth of this book is amazing.  If I were someone doing pure research in computer science algorithms, I'd rate it at 5 stars out of 5.  But, as a lowly nouveaux-programmer trying to improve my mind, the best I can give it is an OK 3 stars out of 5.

Author ID	A3TY5TM5J49593
Useful Votes	13/15
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.952205882352941	0.0147058823529412	0.0220588235294118	0.0110294117647059
Very usable algorithm reference...
Some may say the title is a bit misleading. Sure, you'd want to be very interested in the subject to use this as your first introduction to algorithms, and the analysis and design of them. On the other hand, the book isn't especially advanced. It just covers a lot! As a textbook, or for self-study, the book excels in clarity, coverage, and precision. It never lets go of the big picture, but still has every bit of detail you would want in an introductory text, with mathematical proofs of interesting properties of the algorithms introduced (and the first 6 chapters explain any mathematics you need). As a reference, the book is immensely useful. Because almost any other algorithm book has a reasonable size, they must make a choice of what to cover. This book avoids the choice, and is therefore much thicker.  Of course, one book can't cover everything, the authors limit themselves to fundamental algorithms, anything related to parsing, semantic analysis, rewrite-systems, theorem-proving, computational biology, numerical analysis, computer graphics, machine-learning, signal-processing, or a number of other topics is better dealt with in a more specialized book. Still the coverage is unusually broad, and you would be hard pressed to find a more complete reference. If you only want one book on algorithms, this is the book you want. If one algorithm-book isn't enough, you would still want this one, because it would be hard to even find a collection of books covering the same material. Besides, it will give you more shelf-space for other more advanced texts :-)

Author ID	AG35NEEFCMQVR
Useful Votes	3/6
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.875	0.0394736842105263	0.0328947368421053	0.0526315789473684
covers the major algorithms of computing
For many readers, this book will be no mere "introduction". The authors span the breadth of computing. If you manage to cover all of the chapters, you will have a very solid understanding of the most common and (hence) important algorithms in programming.  The level of discourse is directed at someone majoring in maths or computer science. This can be seen by the formalism of the notation and the degree of rigour in the proofs.  Merely as an example of what is covered, suppose you are devising routing methods for a network. You should find valuable the chapters on graphs and spanning trees. Where Djikstra's, Kruskal's and Prim's algorithms are proven and used. Even if these might not be exactly applicable to your situation, the generality of the treatments in those chapters may give you insight into how to make your own methods.

Author ID	A14OMACQFBC2P3
Useful Votes	10/12
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.809917355371901	0.0661157024793388	0.0743801652892562	0.0495867768595041
Pseudocode in it is bad brain-cell algorithmic caloric usage
The problem with this book from a beginner's perspective is the horrible pseudocode.  It does not make good algorithmic use of brain-cell caloric use, sometimes. There's a (quite) extensive list of errors on the on-line page. Please check it out before going mad. So while it seems to be a very complete book, it doesn't get the message accross with even some simple algorithms. We are all suppose to love it because it is from M.I.T., but the fact of the matter is that you'll need books more student-oriented. Buy it for reference, anyhow. It's worth the money, in that sense.

Author ID	A17A0MOQFK9K1D
Useful Votes	20/33
Rating	2
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.905737704918033	0.0491803278688525	0.0204918032786885	0.0245901639344262
Poorly written with lack of  ways to test yourself
While many have noted how Thomas Corwen and his co-authors have added a scholarly touch to this subject with plenty of proofs it does not make for a good text.  One can argue that this book should supplement the instructor's teachings.  That would be fine except for the fact that there are no answers to the problems.  Therefore, a student has no idea if he or she is on the right track.   To this end Corwen snidely replies on his website that any student asking for the answer will have his or her name posted as a potential cheater since Corwen believes that instructors should be able to use his problems as homework.  Here's an idea, how about instructors developing their own problems!   Corwen also does not relate the material in plain English as someone like Frank Carrano does.  There are other sources of many of the concepts like binary search trees, sorting algorithms, O-notation.  The only thing Corwen is adding is lots of proof and mathematical shorthand.   If you are interested in the mathematical concepts behind the algorithms this is a fine introduction.  If you are interested in the algorithmic concepts, this is not for you.  Ultimately if you are a student whose instructor will be using this book, you have no choice about buying it. If you are an instructor, however, look at another book to supplement your teachings.

Author ID	A1OVF0KSZZRTEV
Useful Votes	2/8
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.839285714285714	0.107142857142857	0.0178571428571429	0.0357142857142857
An excellent introduction to Algorithms
I've used this book for three of my classes now, and I find its treatment of the subject matter to be comprehensive and easy to read. Good examples, usually very readable prose, and a lot of useful problem formulations. Definitely recommend this; it's the defining work in this area.

Author ID	A243Y0PRIBZMLY
Useful Votes	7/9
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.918181818181818	0.0318181818181818	0.0227272727272727	0.0272727272727273
Too much coverage and few examples
I am a MS student, we used this book as Text Guide. Thank God I pass although I just got a B in part due to the poor coverage of exercises of this book. Despite of my willingness to try the examples and exercises it was really frustating not be able to check any of my answers. First of all the book tries to cover all the possible topics related to Algorithms from sorting  to NP-completeness problems. My recommendation, focus on what you know well and cover it thouroughly or at least split this book in 2 volumes. Second, the anoying way to explain things by leaving them as exercises.  Third, the exercises were not in any way helpful to reinforce the material covered in the chapter, on the contrary are just the introduction of new concepts; and on top of that no answers available. In some cases the answers are not even related to the chapter you are reviewing, just an example, the solution for some of the problems in NP chapter are the application of Dynamic Programming which is a different chapter in the book.  If you have the unfortune of using this book, search on the net for answers that may guide you on your homework assignments.  Best of the luck.

Author ID	A2I17T9XB6LSGW
Useful Votes	94/104
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.977900552486188	0.00736648250460405	0.00368324125230203	0.0110497237569061
A definitive guide, but not perfect
INTRODUCTION TO ALGORITHMS is pretty much the standard textbook in the field of algorithms.  In its favor is the fact that it is quite comprehensive, covering a wide range of topics that the beginning student will need to know.  On the other hand, it has a tendency towards the confusing and the obscure, with many of the example problems not making a lot of sense.  If one decides to purchase this book (and the students will have no choice in this matter, being subject as they are to the whims of their professors), then I recommend that one immediately prints out the "bug correction" page available on the web, as there are several major howlers present in the book, and if one isn't careful then many hours will be lost while one checks and rechecks faulty pseudo-code.  In one particularly confused portion of the book, the correction sheet completely replaces three entire pages of the text. This book covers a huge amount of material, and many of the topics are described quite adequately.  Although readers may already be familiar with the numerous data structures that are discussed, the book doesn't assume prior knowledge and goes into quite a lot of detail concerning them.  These sections, in particular, are illustrated clearly and offer great reference material that every programmer should have access to.  This portion on data structures is one area where the book's conciseness is an advantage.  It's simple enough for the beginner to learn from, but it contains more than enough information for the advanced user in need of mental refreshing. The opening sections that discuss the rudiments of algorithm analysis are also covered competently.  The easier subjects don't suffer from the book's shortcomings, as these ideas aren't quite as difficult to understand.  For a simple introduction to the easier-to-grasp concepts in Algorithms, these sections simply can't be bettered.  It's not until later chapters that some of the material appears incomprehensible. Other parts of the book are very confusing to the beginning students who, presumably, make up the bulk of the target audience.  If this text is used as an accompaniment to a class (as it usually is), then you'll probably do all right.  One really needs to have some other source of information, because this book tends to get quite confusing.  The problem sets included are frequently obscure, and don't always relate to the material in that chapter.  The fact that many of the problems have no given solution (even if one attempts to contact the authors!) is quite telling.  The style of the book is extremely dry and occasionally impenetrable, even when compared to other computer science textbooks.  If you're looking at this page, then no doubt you're looking mainly for pricing information, since this book is the definitive standard on the subject.  Keep in mind that "definitive" doesn't necessarily mean perfect, and, alas, this book is far from perfection.  But if you have an alternative method of learning the material, then this is an excellent book to have as accompaniment.  And once you've learned the material, you'll find this to be a great resource.

Author ID	A370O39F15GK89
Useful Votes	30/51
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.850574712643678	0.0517241379310345	0.0574712643678161	0.0402298850574713
Honestly?  I'm disappointed with reviewers...
Giving this book a bad review because: a) you had a bad instructor for the course b) you find the material difficult c) you can't understand pseudo-code are not what I would call constructive or worthwhile critiques of the text of this excellent book.  PLEASE society, PLEASE understand that some topics you have to actually WORK at understanding.  It won't be spoon fed to you. It seems moreso with Computer Science majors than other majors (I'm an electrical engineer undergrad, comp sci grad student) that they whine and whine and whine about the math or about it being difficult to actually have to work to understand something.   Oh my GOODNESS!!!! It's hard?  Well, BLAME THE BOOK. Rant over. This book is amazing.  It's the bible of algorithms and, to some extent, data structures.  If you're not aforementioned whiners, feel free to buy this book, work hard, and learn a lot!  There's not a better book out there in my experience.

Author ID	A19VC2H59QWVT
Useful Votes	5/5
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.923954372623574	0.0304182509505703	0.0228136882129278	0.0228136882129278
This book is for students and academicians
There's always been a confusion about programming and the study of algorithms. This is due to the nature of computer science which lies between the practical world where the professionals reside and the theoretical aspects of computing where (we) students and (our) professors live. So:  1) If you want to learn the theory of algorithms and how to make correctness proofs and how to analyze them, this is the place to start.   2) Every chapter presents non-trivial content accompanied with up to date references at the end. If you are excited in what you have read in a chapter, you can definitely find the more advanced books and articles to pursue your studies accordingly. In this sense, the book is unmatched in its category.  3) If you are a programmer, you have two options:  a) Go, get a simple "Data Structures and Algorithms" book if you are so passionate about seeing actual code in a book. In this way, though you would constrain yourself to a small subset of algorithms and data structures.  b) Try to understand what really an algorithm (or the algorithm you are specifically looking for) is and then code it yourself with the help of this book. I admit that the treatment of the material is not in a way to permit this easily. But, the figures may help.  4) The authors falsely states that this book is "also" for professionals. This is obvious.  5) The book lacks some solid background material to analyze the algorithms. Though, this would make it a 1500 page huge tome.

Author ID	A1AMTYHDM493II
Useful Votes	2/5
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.904761904761905	0.0317460317460317	0.0317460317460317	0.0317460317460317
An Excellent choice!
I had heard much about this book before I purchased it but since it was never required I had never actually looked at it until recently. Well its reputation is well deserved. This book is certainly COMPREHENSIVE if nothing else. I cannot imagine a common algorithm that is not explained and analyzed in this book, from Discrete Fourier Transform to Computational Geometry it is all here. Also I like the fact that the material is presented in such a way that it is easy to study by yourself. The style is informal, and although rigorous proofs are also provided the emphasis is on the intuition behind the algorithm. There are substantial appendices and an easy introduction section, such that you need very little mathematical background at all to be able to benefit from this text. Overall, I cannot imagine that there is another algorithms textbook that is as comprehensive and rigorous as this one. The only downside is that it is very hefty and correspondingly expensive. But if you are a novice in algorithms and want an easy to follow text I can highly recommend it.

Author ID	A1DDAP4XQJJX8D
Useful Votes	2/5
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.9	0.0363636363636364	0.0272727272727273	0.0363636363636364
A classic textbook and reference for everyday needs
The "Introduction to Algorithms" book is well-known to those people that are related to Computer Science. It is a very well written book that proved entertaining and challenging when it was the primary text for our Algorithms class, as well as handy when confronted with real-life applications of the algorithms presented. I found the exercises very good, and I liked the fact that the chapters were self-containing. The sections on linear sorting and hashing are very practical, in my opinion, but I suppose the same could be said about most of the other chapters. Well-deserved 5 stars from me!

Author ID	A21IFF9VTM7E0D
Useful Votes	7/11
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.828125	0.109375	0.0625	0
I Hate This Book!
This book will probably make you hate life.  But it's written well.  It usually takes me hours to get through one chapter.  My only complaint is that the answers to the questions are nowhere to be found.  That's not very helpful when the questions can be pretty tough. Get through this book and you can get through anything.

Author ID	A3HTD7YTMDGNOX
Useful Votes	8/12
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.977099236641221	0.00381679389312977	0.00763358778625954	0.0114503816793893
book almost every computer science student recognizes
Over the past two years I have taken both undergraduate and graduate level algorithms classes that used this textbook.  I often had this book in my car, or on my desk at work, and people would come up and comment on it as if it was a long lost friend! This is truly a fanatastic effort, and there is a good reason that so many engineers are familiar with this book.  If I were to teach an algorithms class myself I would certainly use it.  I know some people do not like the psuedocode that is used, but I think that it is ok, once you get used to it. One reason I gave this 4 stars instead of 5 is because the "new edition" seems to really only have small changes in it.  I used the first edition for my undergraduate class, and less than a year later had to buy the 2nd edition for my graduate class :-(  I found this rather annoying.  It seems like the authors reorganized the book just to extract more money out of students like myself, so that I would have to buy 2 copies instead of being able to use the same book in more than one semester.  I will have a hard time reselling the first edition now as well.  I know that this is a common practice in the textbook industry, but that does not make it right.  The changes in the second edition seem to be very minor, and not worth shelling out another large chunk of money.

Author ID	AOX78NO876580
Useful Votes	8/9
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.831858407079646	0.079646017699115	0.0442477876106195	0.0442477876106195
Still "the" reference, still errors
The book is, as long as I know, the standard for introductive algorithms courses. And one can easily understand why, since it is complete and authoritative. An encyclopedic good work that deserves respect and a good reviews. I'd gladly give a five stars rate, but it seems that this book must chronically suffer the annoying disease of bugs and printing errors. It was so in the first edition and it seems it is going exactly the same way in this second edition. Just go to the MIT Press web site and check the impressive (since we are just at the sixth month of life ...) bug reports list.

Author ID	A2L8IKVGAVA2HH
Useful Votes	14/31
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.867579908675799	0.0593607305936073	0.045662100456621	0.0273972602739726
Introduction to Algorithms, Second Edition
Coinciding to a course i'm taking at University of Riverside I find this book to be include rigous reading.  The word "Introduction" in the title is a misconception to the explantions and the wording within this book.  The reading takes time to comprehend, and it seems to me there's more context than content.  The "psuedo-code" provided is not desriptive as it should be.  I find myself spending more time trying to understand the psuedocode rather than the concept itself.  A great deal of explanations are expressed in mathmatics, and i've finished gone beyond the calculus series that are offered here and i find it hard to grasp certain concepts and i find myself using the calculator more than writing actual code.  Another large drawback is the fact that the excercises at the end of the chapter do not have solutions... it's as bad as having a physics problem that blindly deals with the subjects within the chapter thwarted from and offer no solution.  It's rediculous.  For the other people say "yaye i tihnk this book is great," i find it hard to believe.  The context is thick and clutter, the explantions are obscure and confusing, the math needs much understanding itself, and the exercises have no solutions.  Terrible!

Author ID	A3U1RZZPKYSFTN
Useful Votes	2/18
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.705882352941177	0.117647058823529	0.0588235294117647	0.117647058823529
Good coverage
This book delivers what every programmer should know. 1) How to reason,analyse,determine algorithm efficiency

Author ID	A1FOX456JB6YST
Useful Votes	3/4
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.856115107913669	0.0647482014388489	0.0503597122302158	0.0287769784172662
The Best of Its Kind
This is an excellent book but it ought not be your very first introduction to algorithms. Also, if you have never understood a mathematical proof, this book isn't for you. In that case, you probably ought to avoid doing any work that involves implementing (as opposed to using) complex algorithms. For those who are, or soon will be, deeply involved in implementing (and creating) algorithms this book is as good as it gets. It is not, however, the only book you want. Robert Sedgewick's books titled "Algorithms in ..." come at the subject from a somewhat more empirical point of view. You need that too. (Not "instead", but "too".)   If you are just getting started and want a little theory mixed with some challenging problems, look at "Programming Challenges" by Skiena and Revilla.

Author ID	A3VCTCLQLOXTOS
Useful Votes	12/13
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.947368421052632	0.0263157894736842	0.00526315789473684	0.0210526315789474
Good as a reference book.  Not so sure about it as a textbook.
I have used this book to teach a junior level course in algorithms in fall-05. This book is exactly what its preface says it is - a buffet of algorithms. Instructors can pick and choose what to teach from it.  Do not even attempt to teach the whole book in one semester. It's encyclopedic.   The pros:  Lots of algorithms to choose from. Covers a very wide array of subareas in algorithms. Detailed analysis of many algorithms that could overwhelm even graduate students. Written in clearly separated sections allowing an instructor to choose what portions to teach to an undergraduate class and what portions to include for a graduate level class. Lots of problems at the end of each section.   I liked the fact that this book included an introduction to computational geometry, but wished they had included some more material like planarity of graphs and voronoi diagrams. The chapter on dynamic programming was good and gave both me and my students a clearer idea of what dynamic programming is about.   Voluminous enough to use as exercising weight or mugging someone.  Decent font sizes and printing quality.    Cons:  The book tends to go very often into abstract and obscure mathematical proofs of run-times and correctness without explaining any reasoning of how or why an algorithm was designed the way it is. It leaves the students (and instructors) wondering "How in the world did somebody come up with this stuff?".  That is, this book is mainly about "analysing" the run-time complexities rather than the "design" of the algorithms. I feel there were several occassions in which simpler rather than ultra-rigorous proofs could have been presented.   Some of the algorithms seemed unnecessay (Strassen's algm can do matrix multiplication in O(n^2.83) instead of O(n^3) if the programmer is willing to slice and dice and juggle matrices in some really funky ways .. No thanks!).   Instructors have access to the solutions manual - which includes solutions to "some" problems, but not all.  Can be very overwhelming for undergrad students who are usually not attuned to mathematical notations.   I would actually give this book about 3.5 stars instead of the 4 that I have indicated (but that option does not exist).

Author ID	A1Z57JTU20R2SH
Useful Votes	4/6
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.920863309352518	0.0287769784172662	0.0215827338129496	0.0287769784172662
Psuedo Code made worse by poor teaching
I used this book as part of a graduate class in Algorithms  and hated the psuedo code because it didn't read as clearly or unambiguously as the "real" code I have been reading as a professional developer for over a dozen years. After teaching myself and corresponding with the authors,I see the difficulty I had stemmed partly from the way my teacher used the book. The pseudo code makes reference to other bits of code in other parts of the book. Its not always clear that these parts do appear in the index. If the course had followed the book more  closely that would have been evident. The author's point isn't completely lost though. If I had  carefully read the introductory material I would have picked that up.

Author ID	A1Y0UKKB61QCDE
Useful Votes	5/9
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.879828326180258	0.0386266094420601	0.055793991416309	0.0257510729613734
Crystal clear and down-to-earth, a must-have classic
Maybe the biggest difficulty to a student who is taking courses on algorithms is to do the mathematical proof - the homework assignments hog students time, and its very common to have no idea in front of proof questions in an exam.  This great text book from MIT does its best to minimize the pain all along the road, well designed illustrations are widely applied on the proofs in this book, and the ideas behind the mathematic equations are crystal clearly explained in a very accessible way. It is the best text book I have read among a long list Of algorithms books suggested by my professor. Of course it is not to say that learning algorithms is dirt easy with this book, "Nothing worthwile is achieved without effort. You'll need to put in the work and have the ambition to succeed when the going gets tough." -as Ivor Horton said in a book.  Besides, its not only a rigour academic text book but also problem and engineering oriented, unlike some other books on algorithms you might throw away after the schooling.  The only problem is: I cannot find solutions of the exercises in the book. Since the exercises are very well conceived and worth working out, there should be something to let the readers check if they are doing right.

Author ID	A6CMYV2RPOUA6
Useful Votes	13/28
Rating	1
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.884955752212389	0.0884955752212389	0.00884955752212389	0.0176991150442478
Slightly more fun than the dentist, but not much.
As textbooks go, this one is pretty dry.  Granted, it is about Algorithm analysis, but even so, its pretty bad.  The explanation of the concepts is poor, and the exercises are not obviously answered in the text, if they are at all.  This book is known to actually introduce concepts in the exercises at the end of the chapter. Question: what is X? Index says: see question on X.  I have never had a worse text in my life.  If you are a teacher, and hate your students, require this book.  It more than any other will give your pupils ulcers and sleepless nights.

Author ID	A158IM0ZW9HG8K
Useful Votes	11/13
Rating	2
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.924137931034483	0.0275862068965517	0.0206896551724138	0.0275862068965517
Not easy to understand
Although there is some great analysis of algorithms in this text, the text does not do a very good job of TEACHING one how to perform the analysis. I really did not like the fact that answers to the exercises are not available anywhere. I learn best by seeing examples done step by step and this book does not provide any solutions or even offer a separate solutions text. The authors seem to feel that the instructor should provide solutions, well I don't know about other Universities, but my professor does not provide solutions in class and the TAs are not very strong with this type of difficult material. Which leaves me to scour the Internet and other texts to try and understand the topics when I could have gained the same understanding by examining the solutions to the exercises.

Author ID	A1EASHL018BK45
Useful Votes	3/5
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.82051282051282	0.153846153846154	0.0256410256410256	0
simply, the best
I'm a graduate Computer Science student. This book was the most useful while i was in school, and even after i graduated i'm still using it, and it's the best of its kind.

Author ID	A340881CQVU7WZ
Useful Votes	5/8
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.865671641791045	0.0746268656716418	0.0447761194029851	0.0149253731343284
Great book
The material is very hard, but the book is written in a way that makes it as easy to read as possible.  There is TONS of information here.  I usually like to highlight the important stuff when I read, but in this book, nearly everything is important and worth highlighting.  In other words, there is no B.S.; they get right down to the point.

Author ID	A3SPYCJ3HA228K
Useful Votes	7/10
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.892018779342723	0.0422535211267606	0.0328638497652582	0.0328638497652582
best book on algorithms
this  is possibly the best book  for the course 'Data structures and analysis of algorithms'.Knuth is far too advanced and many others are not even worth mentioning. The best part is that it is very perspicuous but does not compromise on mathematical rigour.The proofs of correctness are very elegant as are the detalied analyses of all the algorithms.Actually,the mathematical approach that the authors employ is very enjoyable.A full section devoted to the mathematical tools  is a very good idea. All the topics viz. data structures, sorting techniques,graphs,design techniques like dynamic programming,greedy algorithms,Divide-n-conquer r given in extensive detail.(since i m only a second yr under grad student,i havent read the more advanced topics like FFT,computational geometry,NP-completeness.) The exercises make you think and test both mathematical acumen and programming dexterity.many of them require a  fair bit of creativity. As another reviewer pointed out, this book is the one for budding computer scientists and software engineers,not for the 'learn XYZ in 21 hours' fans. a bit of background in a structured programming language(Pascal ,C etc.) and more importantly,knowledge of the fundamentals of discrete mathematics is required. A must buy for all CS students.

Author ID	AAETLVXGMC4I
Useful Votes	2/4
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.914529914529915	0.0341880341880342	0.0341880341880342	0.0170940170940171
A very good Algorithms book
I've bought this book for my Data Structure Class - and comparing to other books of the same kind - I must say that I haven't seen any other so complete and easy to understand than this. I like the pseudocode, because it makes the theory more general - algorithms and data structure are not specific from a language like Pascal, C or Java. There are few exercises, but they really stimulate our creativity, making us think beyond the borders.  The best thing about the book is that it presents all the mathematical background required for the proofs and for understanding the theory.The part about B Trees and Graphs are really good.

Author ID	ARJAV8MY6D2LZ
Useful Votes	3/3
Rating	2
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.879518072289157	0.0602409638554217	0.036144578313253	0.0240963855421687
very detailed, few examples
This book contains lots of information, but examples are few and far between and there is no student solutions manual for the exercises. If you want more practice or are having trouble grasping something, tough.  you will have to look elsewhere.  I bought this book for an algorithms class.  I ended up finding more useful information on the internet. For $80, I expect more.  I would suggest that the authors keep the student in mind when writing their next textbook.

Author ID	A33FVGUN3V4Z67
Useful Votes	6/8
Rating	3
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.955390334572491	0.0223048327137546	0.0111524163568773	0.0111524163568773
An encyclopedia not a textbook
Frankly I think that this is the most over-hyped CS book on the planet.  Every data structure or algorithm begins with the pseudocode followed by the explanation and analysis. Technically this may be complete, but with this layout it is very difficult to develop an intuitive feel for algorithm design and this is the book's major failure.  The explanation is something like this: line 12 swaps p[x] and p[y] because ... line 13 is the beginning of the for loop... line 14 calls procedure ....     It seems that all this book does is encyclopedically lists algorithms without bothering to try and train the reader to develop his own, which brings me to its exercises.  The authors seem to be on some sort of ego trip with the complicated exercises and problems offering no solutions or answers to them.  I believe that unless they provide step by step solutions to these problems, no reader particularly the self-learner can grasp algorithm design and learn to write his own. Most of this book is math, is this book focussed on CS undergrads looking to work in the real world or research scientists? The book is perfect if you are in MIT, but what happens to the average reader? Having layed down the criticism this book does have its strong points especially its fantastic pseudocode and in depth analysis. I don't think that you would find a more comprehensive book either. In the end i think that one should buy the book more for its value as a reference rather than hoping to learn something from it.

Author ID	A31ZJI7Z752LAX
Useful Votes	4/5
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.85	0.0583333333333333	0.0416666666666667	0.05
Comprehensive and (almost) complete.
I am an EE PhD student in Princeton, with basic CS background. I bought this book about a week ago, and I just finished reading more than half of it. I am impressed by the organisation and dedication of the authors to write something understandable to a wide audience, without sacrificing in depth analysis. If you need a good and complete introductory book,  that summarizes also the latest research in the field, I would recommend this one.   Drawbacks...Minor (+ I am a weird guy) and hardly mentionable, but I have the feeling that some proofs may have been presented more rigorously. I would also like to see more examples or SOLUTIONS to some of the problems.

Author ID	A3AB3BOFIMPRSW
Useful Votes	24/64
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.951020408163265	0.00816326530612245	0.0122448979591837	0.0285714285714286
The worst text I have ever seen
In my 20 years in the computer industry I have seen a lot of textbooks.  This text is by far the worst book I have ever seen on any subject.  1) The psuedo code is worthless unless you are very familiar with the dead language APL. Why not use a language that some of the readers might have actually seen before?  2) The explanations seem intentionally convoluted. The author is more interested in trying to show how smart he is instead of helping the reader to understand the material. He skips numerous mathematical steps in almost every example. Giving the impression of finding the results by magic. The reader should not be forced to figure out the procedure by trial and error.  3) There are no answers to any of the exercises. The arrogance this displays is truly astounding. Does the author truly believe that the problems are so trivial that the answers are self-evident? If they were trivial then there would be no need for a text at all, we could just absorb the knowledge from the ether as the author seem to think we can.  4) The author never shows the reader how to put any of the algorithms to any practical use.   Here's the test for a good book. Can a person of reasonable intelligence, given this book, and enough time, learn the material unassisted? If the answer is no, then the author failed to do his job.

Author ID	AP3QVBHMJIGK7
Useful Votes	19/63
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.902439024390244	0.0182926829268293	0.0396341463414634	0.0396341463414634
Concise and Clear, No. Why not both?
There are a number of reviewers who proclaim that the language agnostic nature of this book, in addition to it's erudite tone, more than compensate for the (artificial) learning curve.  I beg to differ. Being an actuary, I recognize that this book's code snippets are written in a variation of APL. APL is hardly a self-evident programming language (read-only is a more accurate description). While computer science cognoscenti might decry spoon-feeding, there's nothing wrong with being *concise and clear* concurrently. Indeed, the truly great books in the hard sciences are both easy to read and rigorous at the same time. If pedants would get off of their high horses for a moment, they would probably admit this much (heck, who wouldn't?). Rigor at the expense of clarity may appeal to intellectual snobs (who live for the material, god help them), and clarity at the expense of rigor may appeal to beginners, but WHY NOT HAVE BOTH? While this book covers a good deal of ground, it does so at the expense of clarity. A canonical book would have both rigor and clarity, and this book doesn't. It's as simple as that.   The sordid truth about this book is that Professors tend to assign it as reading material with the expectation that students will rely primarily on class notes and then use the book as a reference of sorts (or as a source of homework problems). Most of the graduate courses that I've taken follow this approach. Having said all this, academia is essentially a small and sterile refuge for people who couldn't hack the real world. Take your courses, if you must, and then go out and get a life. In the end, most journals end up in the waste basket. Your time on this planet is short, don't waste it cloistered in a library! trust me on this...

Author ID	A1L6UWG8DXAURH
Useful Votes	6/47
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.878504672897196	0.0420560747663551	0.0420560747663551	0.0373831775700935
I'm rather ambivalent about the book
I purchased the book because it was required for my undergraduate algorithm analysis class. My experience so far has been terrible. My instructor was incapable of getting across even the basic concepts and he was constantly making mistakes and backpedaling. It didn't help either that he didn't make the slides used in the class and only saw them for the first time when he walked into the class.  All of this and a weak background preparatory at the beginning of the class made the book a rather excruciating book to learn from. It is indeed a book of depth and knowledge, but it can be used against you as easily as it can be used for your advancement. Due to my bad experience, I'm inclined to look at CLR rather negatively. I would dearly love to take another algorithm class with a truely competent instructor but since there isn't one in my immediate future, it'll be a while before I'm given a chance to revise my opinion of the book. The book can be an excellent source of algorithmatic knowledge but it's hardly an "introduction" for the beginners and used wrong will very easily dampen any futher computer science ambitions.

Author ID	ATEB45TXL5BCL
Useful Votes	1/2
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.904761904761905	0.0357142857142857	0.0357142857142857	0.0238095238095238
A Good Standard for an Undergraduate Course.
I found this book to be a very good introductory book to the various topics of algorithms.  It contains a great introduction on Big-Oh analysis, standard techniques of programming (such as greedy, DP and so on) and even dabbles in the world of NP-completeness and approximation algorithms.  A lot of other very interesting topics are surveyed, such as the FFT, linear algebra, the simplex method, computational geometry, etc.  All-in-all, if you are looking for a somewhat mature introduction to these topics, the book seems to give a fair representation of each. However, there are a few drawbacks.  The book should have more information on further studies if the reader wants to pursue a specific topic.  The book should also have included Cook's theorem for the reduction of an NDTM to SAT in polynomial time.  Finally, in a book on advanced algorithms that covers so many topics, parallel algorithms should make a small appearance beyond sorting networks.

Author ID	AZ2VTFIJWRALA
Useful Votes	1/2
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.89873417721519	0.0126582278481013	0.0632911392405063	0.0253164556962025
Lots of stuff, but a little verbose
A good introductory text but that's about it. Any CS major worth his salt should chew his way through this level material pretty quickly, and there's the only rub... at points this could be a little bit more concise because it actually can aid understanding in an exact field. Sometimes less is more. The spared pages could be used to cover more material or to raise the bar a little.

Author ID	A1EDXUPVD3NF3U
Useful Votes	1/5
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.8	0.16	0	0.04
Best Algorithm book ever
I've read about a dozen algorithm books and the only one I've come back to repeatedly was this one.

Author ID	A1I1DFOMATT3KU
Useful Votes	2/3
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.928571428571429	0.0476190476190476	0.0238095238095238	0
I like it a lot...
This book explains the concepts of algorithms in a very understandable way. It's my basic reference when it comes to algorithms. The algorithms are very well explained and the graphics help a lot to the explanation.

Author ID	AMNFIJ6V497VU
Useful Votes	1/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.82051282051282	0.102564102564103	0.0512820512820513	0.0256410256410256
The holy book of algorithms
Yes, this is the HOLY BOOK OF ALGORITHMS. It is both detailed and concise. But I do not think that it is for introductory level algorithm courses. Rather it is appropriate as a reference.

Author ID	A1UJT2IQ8673XG
Useful Votes	2/11
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.736842105263158	0.210526315789474	0	0.0526315789473684
introduction to algorithms
The best book in algorithms, its  kinda like a bible as far as algorithms is concerned.

Author ID	AZ67F6SKNLSYM
Useful Votes	2/19
Rating	4
Topic Path	0	1.1	2.1.0	3.1.0.0
Topic Path Probabilities	0.858407079646018	0.106194690265487	0.00884955752212389	0.0265486725663717
Why Don't the Authors Supply Us Codes in Real Programming Language?
I'm a sophemore and I have had this book for over two months.Instead of reading this book from cover to cover,I use it as a referance manual for my course of Data Structure and Algorithms.This is an excellent book indeed.However,the pseudocode in this book has costed me a lot of time.As the author has said,all sourcecodes in Java are avilable from another book,that's fine.I suggest the authors translate all the codes into C,C++ and other languages,Or they can have them translated.This would not be a difficult job.

Author ID	AL6I87GF7NGN2
Useful Votes	1/64
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.818181818181818	0.0909090909090909	0.0909090909090909	0
Student
I have not yet read or started this book. I'll let you know surely once I get to it. Thanks

Author ID	AP5K51CQJZVRA
Useful Votes	1/28
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.844444444444444	0.0888888888888889	0	0.0666666666666667
Wasn't impressed
I'm not sure they knew about his which is why I'm giving it as high a rating as it did, but I didn't include all the items in my shipment that I was expecting.   In this case the CD.

Author ID	A152U9PVMR55DN
Useful Votes	10/11
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.970108695652174	0.0135869565217391	0.00543478260869565	0.0108695652173913
A little more than I expected
Having never gone to university (I sadly went to a small community college and am, for the most part, self-taught), I didn't know exactly what to expect from this book. From other reviewers, I gathered that this was "the book" on algorithms. I pretty much got the feeling that if I truly wanted a firm grasp on some of the programming algorithms in use out there, this was the book to buy. Boy, was I wrong...  As stated by CJB in his (or her) review (sorry, can't tell your gender by initials ;)), this book seems to be geared towards computer scientists, not so much programmers (and I agree - there IS a huge difference). If you don't have a fairly formal background in math, a fair amount of this book may be a bit over your head (trust me, I know from my sub-university-level math knowledge). Also, if you're not used to (or don't like) reading dry university-style text, then this book probably won't be for you.  However...  If you enjoy challenging yourself (I do), and don't mind spending time on Google looking up things that you don't understand at first, this book may (somewhat) be what you're looking for. One thing I really enjoyed about this book (that other people seemed to dislike) is the pseudocode. If you're a programmer (who knows what they're doing, i.e. not learning the language), seeing an algorithm in pseudocode, no matter what the style is, should be all that you need (and, generally, what you're looking for in a book). The syntax of the implementation is the easy part. I found that by stripping out most of the mathematical junk (the analysis - hey, I only really need to know which one's faster given the current circumstances), I was able to gain a lot from this book.  But again... If you choose to purchase this book (definitely not a waste of money, as some reviewers would have you believe), be prepared for some difficult reading - especially if you're like me and haven't done the whole university thing.

Author ID	AAP24L83AP0J3
Useful Votes	15/17
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.964467005076142	0.0203045685279188	0.0101522842639594	0.0050761421319797
This is the bible on algorithms.
I feel the only reason why this book gets any bad reviews is because the title "Introduction to Algorithms" is kind of misleading.  The text is extremely technical, requires a pretty serious mathematical background, and is geared towards computer scientists, not programmers (yes, there is a huge difference).  If you are a self taught programmer with no formal background in the field of computer science, this book is probably going to be way over you head.  Regarding the pseudocode, it is pseudocode!  It is not a real language.  If you do not understand what pseudocode is, you need to go back to CS 101.  About the book not providing answers to the exercises, I think this book is mainly used as a university text.  Your professor should choose which exercises you should attempt and then go over the answers in class.  It would be nice if maybe a seperate answer book was available.  Now I'm not going to sit here and pretend that I understand even half of the book, but I do understand what the book is.  It is a pretty standard text that very technically examines many computer algorithms.

Author ID	AOUI5XDRR39A7
Useful Votes	2/6
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.835616438356164	0.0684931506849315	0.0273972602739726	0.0684931506849315
My only problem with this book is...
My only problem with this book is that all the pages are dogeared, most are heavily marked up, the binding is broken and the cover bent back. But that's just my copy, in use every day for 13 years now. Enough detail to implement algorithms; enough theory to understand them; enough breadth to compare them to other algorithms. (this review obviously refers to the first edition).

Author ID	AR6Q81MFY90WK
Useful Votes	8/11
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.908108108108108	0.0540540540540541	0.027027027027027	0.0108108108108108
Worth every Page, Penny and Brain Cell !
This book is outstanding. All the algorithms are given in pseudo code which make the material (and notation) very precise and devoid of any idiosyncrasies which a real programming language might introduce. Although, the book requires fairly decent mathematical background, the more complex math can be skipped on a first reading (to avoid getting bogged down). Of course, you still need to know the basics of discrete mathematics and it will serve you well throughout this book. All algorithms are compact which helps focus on the crux of the algorithm. I didn't see any algorithm pesudo code listing in the book so far which exceeds  half a page. The chapters are reasonably independent of each other, although sometimes its obvious when you can't skip ahead. The book is really exhaustive and goes into depth on all major design techniques (iterative, divide and conquer, dynamic programming, amortized analysis, greedy algorithms and so on). The effort required to get through the whole book is definitely worth it, and will make you a better programmmer in the long run.

Author ID	A19I1DN6283WX
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.795918367346939	0.163265306122449	0.0204081632653061	0.0204081632653061
Clearing things up...
I gave this book 5 stars for the benefit of the doubt because I have not read it yet.   To the author, might makes things clearer if you allowed folks to examine a handful of pages like most other publishers/authors do on Amazon.   Pierre - Great review! :|

Author ID	A2SBCN90Q9S3YC
Useful Votes	214/248
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.918287937743191	0.0272373540856031	0.0350194552529183	0.0194552529182879
No, the pseudocode is not APL
I am one of the authors of this book.  I read the reviews on occasion, and I have refrained on commenting on them--until now.  Two recent reviews claim that the pseudocode is APL.  That is incorrect.  The pseudocode is not APL.  It is not even close to APL.  The only reason I can even imagine that one might think that it's APL is that we use a left arrow for assignment, as APL does.  I have actually written quite a bit of APL code in my time, and I know for a fact that our pseudocode is not APL.  I grant that not everyone likes our pseudocode.  That is a matter of taste, and I will not deny anyone their opinion.  Similarly, there have been other complaints that are matters of opinion, and I have no issue with people posting their opinions.  But get your facts right.  To those who think that our pseudocode is APL: You are way off the mark.  For those of you who prefer your algorithms expressed in a real, runnable programming language, please note that McGraw-Hill offers a version of the book that comes with a CD containing complete Java implementations of all the algorithms in Parts I through VI.  (By the way, I wanted to leave the number of stars blank in this review, but the Amazon software demands that I give it 1 to 5 stars.  So I'm entering my opinion, which is 5 stars.  I admit to just a hint of bias.)

Author ID	A2V9H3ITX80FAX
Useful Votes	28/40
Rating	1
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.959322033898305	0.0203389830508475	0.0169491525423729	0.00338983050847458
Review of Introduction to Algorithms by Cormen and Others
I am an older student (older than 40) and completed a MS in computer science about 12 years ago.  I recently enrolled in an algorithms course at a local university mostly to brush up on areas that I haven't looked at in a long time.  I have been using this book for about 6 weeks.  In general I like how the book is written but gave it 1 star because I find it very frustrating that there are no answers to any of the exercises or problems.    The exercises and problems seem to exist mainly as a source of test questions for professors (my opinion).  Cormen has published the following on his website regarding solutions to the exercises:  "please do not ask me for solutions; I will not respond. (I used to post names of those who asked me for solutions. I have since decided that this practice is nastier than necessary, and so now I just do not reply.)"  For a guy who wants $80+ a book, this seems to be a rather condescending attitude to take.  Anyway, I have spent a lot of time working on these questions but have no way to know for sure if my answers are correct or not.  I am sure I will found out in a few weeks after our midterm whether or not I understood the material.  Unfortunately, that valuable feedback will come AFTER I receive my grade.  In short there is tremendous demand for an algorithms book that has both questions and answers.  If Cormen and company can't meet this need, then perhaps there are some other knowledgeable people out there who can write one.  If you do, let me know.  I'll be the first to buy it.

Author ID	A2VZYN6SNXMYH2
Useful Votes	15/25
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.844262295081967	0.0655737704918033	0.0655737704918033	0.0245901639344262
Overhyped garbage
If you're looking to LEARN algorithms this is not the book for you. The authors' writing style is excruciatingly verbose and the structure is haphazard.  I do not understand why algorithms exhibiting similar techniques (e.g. dynamic, greedy, etc) are not clustered together. Another peeve is the fact that critical parts of proofs and explanations are left to the reader. And of course, there is no solution manual available to the public. So if you would like to learn algorithms, please check out Anany V. Levitin's book. Although his writing style may be considered simplistic he conveys the information in a style suitable for learning. I hope the authors (CLRS) will one day realize that simplicity is elegant.

Author ID	AXANJDLUF1KFU
Useful Votes	3/4
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.794117647058823	0.0784313725490196	0.0784313725490196	0.0490196078431373
Wide in scope, but very verbose
This is great beginner's text. It covers a wide variety of topics related to algorithms. I found it to be quite useful when I took a first level class on algorithms at Stanford. However, the authors tend to be very verbose at times, to the point of sounding boring and monotonous. It is probably more suited to under graduate studies, and being a graduate student, I found it played on my patience sometimes! However, there are some very cool exercises at the back of all chapters. Overall, a must read for people in EE/CS.

Author ID	AXVHDOVW0Q48B
Useful Votes	4/5
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.919642857142857	0.0357142857142857	0.0357142857142857	0.00892857142857143
THE book to introduce algorithms
You shouldn't have to read this review... this book is unmatched in it's field - it's a great book for someone with no background in algorithms to start learning. The exercises are very interesting with some being more mathematical while others are thought provoking extensions to material covered in the book. It's easily the bible in this field. After this one can go on to more advanced specialized material like Papadimitriou, Motwani and Raghavan etc. If you don't have this book and you work with ANY kind of algorithms or do any kind of programming, you owe it to yourself to get it.

Author ID	A14KU37C5LJCEA
Useful Votes	5/8
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.897435897435897	0.0512820512820513	0.0256410256410256	0.0256410256410256
Reference book..yes; for learning...not really
I had this book for a class during my undergraduate studies.  I'll agree it provides a comprehensive amount of information on data structures, encryption, etc. I would not recommend it as a source to learn the information on a first pass.  As a post-lecture reference it served its purpose, however if you have not been introduced to the topic previously, it's pretty dry and cumbersome to acquire from. And by the way, if you don't plan on developing some serious systems for a tech company, you don't need to worry about this stuff.  Every language has foundation classes that do the dirty work for you.

Author ID	A3OB2K08NTLMVD
Useful Votes	4/6
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.0
Topic Path Probabilities	0.901785714285714	0.0178571428571429	0.0446428571428571	0.0357142857142857
Explanations good, pseduocode bad
I am currently using this book for a Computer Science course.  It's explanations are great, but the pseudocode is horrible.  I have to write programs based on the book's pseudocode and I spend most of my time deciphering the meaning of all the symbols.  Having one letter variable names does not help either.  Maybe the authors could have base their pseudocode on a real language.  One good aspect of the pseudocode is that is does work once you decipher it. All in all, it is a good book for learning algorithms.  I just get rather frustrated trying to implement the book's examples using their pseudocode.

Author ID	A1ZRHO8CVU1S6K
Useful Votes	4/10
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.864864864864865	0.0743243243243243	0.0135135135135135	0.0472972972972973
Great reference, but verbose
I am currently enrolled in MIT 6.046, which uses this book as a textbook.  The course covers a substantial portion of the textbook, Chapters 1-17, 21-26, and 33.  This means that I must read several chapters per week.  Reading sessions take much time, because the authors have made the book very verbose.  The same book could have been written to better effect in about four to five hundred pages. The material covered is very broad, and most algorithms are nonobvious.  Every once in a while, there is a simplification that is simply 'slick'.  Definitely one of the textbooks that I will keep.  For those who mention that the book is too difficult, I must comment that they are not ready for algorithms.  Strength in mathematics is obviously required to be a good programmer. And remember, as Prof. C.E. Leiserson mentioned in the first lecture, "Speed is fun!"

Author ID	A3QPGSKO2O7GUS
Useful Votes	9/13
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.946043165467626	0.0107913669064748	0.0107913669064748	0.0323741007194245
remember, this is a TEXTbook...
and as such, it isn't a good place to look to if you're not taking a class concurrently. This is not an introduction to computer science or to what an algorithm is or basic computing as all of the bad reviews claim it to be deficient in. It was never intended to be those things. Yes it may be a bit hard to follow; Yes, it may be a bit more than you can handle; Yes, that is what analysis of algorithms is. If you don't already understand most of the stuff in the first two chapters before you start, you're not going to get much from this book. It is not by any means for beginners of any type and is instead intended to give an overview of how to analyze algoritms for computer science problems. As for the one reviewer who complained that this book focuses too much on the "useless" basics of computer science and not enough on modern applications of computer science like AI, of course it does...what the hell do you think INTRODUCTION is supposed to mean. You can't expect to dive headlong into more advanced and complicated stuff until you understand the basics. And yes, the psuedo-code kinda [bad]. The book isn't perfect but it does what it's intended to and doesn't do what some people expect from the title. If you bought this and don't understand a word of it, keep it around and try something else first, or take classes on programming and data structures...then come back and it will make more sense.

Author ID	AQ9KJ6ZH4KYXG
Useful Votes	5/5
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.886363636363636	0.0454545454545455	0	0.0681818181818182
great reference, bad teacher
This wouldn't be the book I'd choose for an introductory algorithms class; it's a bit dense at times. However, it's an excellent reference, one of the few textbooks i've kept and will make use of.

Author ID	A2I7EN2L2XP22I
Useful Votes	0/1
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.929577464788732	0.0253521126760563	0.0225352112676056	0.0225352112676056
My personal library about Algorithms and Data Structures
"Algorithms and Data Structures" is a huge field. Lot of algorithms and data structures are used in todays computer software of variuos types. Not all data structures or algorithms on them are adequate for solving a particular problem, so you must have some skills to say which one is "better" than another in your particular situation. Despite it's name, this book is an almost complete reference to achieve this skills. Sure, material presented here is not so easy and the book is not something you can read while watching MTV. Each chapter presents an argument in a very concise and formal way. Too much for some people, but this is not bad. Just skipping what you don't/want understand is the primary key to appreciate this book. When you will master the main concepts of the argument you are interested, it's a pleasure returning on those parts you have precedently skipped. Parts about sorting and selections (heapsort, quicksort, linear sorting, etc.), common data structures (stacks and queues, hash tables, search binary trees, red-black trees), advanced data structures (B trees, binomial heaps, Fibonacci's heaps etc.) and algorithms on graphs (depth first traversal, minimum set cover, Kruskal and Prim's algorithms, Bellman-Ford's method, Dijkstra's algorithm) are well written and you can consider this parts as a reference for the future. But this book as bad things too. The pseudocode, even if comprehensible, is not so much readable. In some cases it's too much dependent by the contest and this increase your understanding time. Chapters about math reference are not clear at all. Too much arguments without too much explanations, especially sections about algorithm's analisys. The last part of this book about complements and extensions could be easily dropped off from the book. Material presented here don't fit in an introductory text about algorithms and needs other knowledge a person who is reading this book obviously don't has. A note on what that particular data structure is useful for would be very appreciated. Good book. Well spent money.

Book ID	Title	Number of Reviews
0201000237	Data Structures and Algorithms	7

Author ID	A3J1BRVN7GXC1E
Useful Votes	26/28
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.976580796252927	0.00936768149882904	0.00936768149882904	0.00468384074941452
The best introduction to the field - a pleasure to read
A textbook by Aho/Hopcroft/Ullman is sort of a guarantee of quality -    and this one is no exception. These people are among the greatest    researchers and teachers in Computer Science, and this book is a    great opportunity to 'learn from the masters'.    As an introduction to the fascinating field of Data Structures and    Algorithms, this is perhaps the best textbook you'll find out there.    Starting with the basics, the authors develop the concepts in a    natural manner. Array, lists and stacks soon give way to binary trees,    heaps and then more advanced data structures. All data structures are    introduced with proper motivation in terms of the kind of problems    that they are useful in solving.    The basic algorithms in searching, sorting, and graphs are then presented    in detail, followed by a chapter on algorithm analysis techniques, and    one on design paradigms such as dynamic programming, backtracking, divide    and conquer, greedy approach, and local search. The book ends with chapters    data structures and algorithms for external storage and memory management.    This is a textbook, and therefore you can expect a fair amount of maths    in the analysis of algorithms, without which you can only do hand-waving.    All algorithms are explained, with detailed examples and illustrations -    this is one of the easiest books to follow in theoretical computer science.    All algorithms are presented in pseudocode, which makes it easier to    understand things at an abtract level without getting bogged down in    language specific technical details, and the pseudocode is very clear    and concise, making it an easy task to adapt it to any given language. An additional plus-point is its size - weighing in at less than 450    pages, this is a 'backpack friendly' book which you can easily carry    around, unlike many others on the subject.    The only caveat is that the book is almost 20 years old, so you won't    find the more recent topics like red-black trees, skip lists etc.    I'd suggest using this book for an introduction to the basics, with the    book by Cormen et al (if you want the maths) or Sedgewick (if you don't    want the maths) as excellent supplements as well as advanced references.    I must confess to having a weak spot for this book, since it introduced    me to algorithms and i fell in love with the subject. However, i think    most people who've read it would agree that it is a classic among Computer    Science textbooks which has stood the test of time.

Author ID	A1KCW7P6QWUUFB
Useful Votes	11/11
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.895238095238095	0.0238095238095238	0.0285714285714286	0.0523809523809524
A classic text on programming
This book stands out among countless books written on the subject.  It basically deals with the two ingrediants of programming , Data Structures  and Algorithms. The first part gives a wonderful introduction to the concept of Data Structures.It goes on to deal with several classes of Data Structures such as lists, stacks, queues, trees and graphs..  This book is profusely illustrated with examples, and lots of exercises for the student to expand upon the ideas.  The next part goes on to deal with Algorithms. Beginning with the concept, approaches, and different metrics that quantify algorithms such as time and space complexity. Common problems such as sorting , searching and the different algorithms are elaborated with the pros and cons.  One nice thing about the text is the way the subject is presented to the reader. Each topic begins with a few basic concepts and then extended in a natural manner to reach the complexity. This especially equips the student with the ability to continue evolving the solutions on their own. Not to mention the numerous exercises. For example by studying the concept of abstract data types one would understand how OO programming evolves naturally.  I highly recommend this book for any one seriously interested in programming.

Author ID	A1DTTOSZ2SFYEQ
Useful Votes	13/13
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.836065573770492	0.114754098360656	0.0327868852459016	0.0163934426229508
Still the Best
From a students perspective this text has it all. Instead of relying on C/C++ to teach the concept of ADTs, this text uses a pseudocode based on Pascal. Consequently, all algorithms presented in this text are clear and  easy to understand. Implementation of ADTs is thus facilitated by using the  clear framework provided in this wonderful text.

Author ID	A2ZIN7R4JR6A8I
Useful Votes	0/0
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.930041152263374	0.0205761316872428	0.0288065843621399	0.0205761316872428
A classic text book on Data Structures.
I believe two books make a classic collection in data structures - one was the data structures book by sartaj sahni (his first edition book many years ago - I haven't looked at his recent books).  That was the book I had to study when I was an undergrad student.  Now I was entrusted with the task of teaching Data Structures and after looking at several books, this is the one I chose (may be because it comes most close to the style of teaching using psuedo-pascal that I grew up with).    I believe psuedo languages are the best way to learn concepts of any computer science area without getting bogged down in the nitty gritty of a language's syntax and semantics.  I found the problems at the end of the chapters to be thoughtful and not extremely hard for undergraduate students.  This book also goes into brief mathematical aspects of analysing the complexity of algorithms where necessary.  The mathematical analysis is usually the part that most undergrad students moan and groan about, but they better get used to it IMO, if they wish to elevate themselves from the ranks of "a programmer" to an software / algorithm designer.    I have to agree that this book can be extremely hard for the weaker students in the class who have never had any programming or basic college algebra exposure.  For all others, this book should be great.

Author ID	A1D28YNZRAOMGM
Useful Votes	21/63
Rating	2
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.829787234042553	0.148936170212766	0.0212765957446809	0
thank god I didn't buy it!
This is a very bad written book in my opinion!It tries to explain algorithms using PASCAL language or something like this... I have seen many better books for algorithms and data structure! Have a look before you buy it!

Author ID	A2PJNE112B53CI
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.891566265060241	0.036144578313253	0.0240963855421687	0.0481927710843374
A JEWEL
Perfect book. Nice and small. You can buy it cheap too, it's old. But it's full of the meat and potatoes, no fluffy Java source code. Sure, it uses Pascal, but it's not that hard to understand Pascal code even if you never programmed in Pascal (me neither). What matters is the discussions behind the scenes. It covers the whole range of what you should know and it's concise. They don't write books like this anymore.

Author ID	A3VWH4WMBBVBKO
Useful Votes	4/7
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.853333333333333	0.0666666666666667	0.04	0.04
Very Good Textbook
I remember using this text in University. I still have it on my shelf and still refer to it. Even with all this STL and such I find this a great reference. I was looking around the web for a more recent book on algorithms, but I've always decided to keep this one. I think the only issue is if a new edition will ever be made to cover OOP implementations.

Book ID	Title	Number of Reviews
0201721481	C++ Primer	20

Author ID	A3GK0OX8AE689F
Useful Votes	2/2
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.979166666666667	0.0078125	0.00260416666666667	0.0104166666666667
Excellent Reference
C++ Primer - Fourth Edition has a really effective way of teaching you the C++ programming language-full detail of what every bit of code does. Have you ever looked at C++ code and had no idea what all of it meant? This book will teach you every single bit of what that code does. The book is laid out in approximately 17 different chapters which are then divided into an average of 9-15 sections. Each chapter is focused on one key subject such as the begining steps and more advanced techniques to use your code. Within those chapters you have each section slowly explaining in detail what each bit of code you're seeing is doing. Now as I've said before, this book explains every bit of code in detail, but this doesn't mean that this book isn't for just beginners. The books cover states that over 48,000 programmers have learned the coding language from beginners to more advanced. About every other page contains tips and secrets to successful coding which stand out in gray boxes. Some of the most smallest things are mentioned here such as how comments work in your code to how your code should be formatted. These tips will help you inprove your coding habits very much. Now you're probably thinking, "This is just another one of those reviews which show each good part of the book. It's not like they're going to give me any info on weak parts of the book!", Well in fact you're wrong. This book isn't all positive. There's some parts in this book which can be very annoying such as lacking a glossary of needed terms even though most terms are put in bold print. There are very good examples of code in this book, but not all of them are the most interesting. Reading this book can be very monotonous at times because of the lack of different things they mention you can code or give you examples of code. How about the strong points? In depth explanations, great examples, great tips, need I say more? This book has a lot of good points to it, there are very few weak points. I would recommend this book to anyone wanting a good C++ reference manual.

Author ID	A3R19YKNL641X3
Useful Votes	5/8
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.94949494949495	0.0227272727272727	0.0126262626262626	0.0151515151515152
Solid material, little to no fluff...
[Review of the 4th Edition]  I really need to learn C++ some day, and I received a review copy of C++ Primer (4th Edition) by Stanley B. Lippman, Josee Lajoie, and Barbara E. Moo.  If you're comfortable with lots of text, plenty of detail, and a more academic style of learning, this appears to be a good choice...  Chapter List: Preface; Getting Started Part 1 - The Basics: Variables and Basic Types; Library Types; Arrays and Pointers; Expressions; Statements; Functions; The IO Library Part 2 - Containers and Algorithms: Sequential Containers; Associative Containers; Generic Algorithms;  Part 3 - Classes and Data Abstractions: Classes; Copy Control; Overloaded Operations and Conversions Part 4 - Object-Oriented and Generic Programming: Object-Oriented Programming; Templates and Generic Programming Part 5 - Advanced Topics: Tools for Large Programs; Specialized Tools and Techniques; The Library; Index  As you can probably tell, this book covers quite an array (no pun intended) of topics related to learning C++.  And knowing that it's now in its 4th edition, it has a track record that is solid enough to allocate resources for both the publisher and authors to keep it updated and fresh.  In the tech book world, two editions of a book is commendable.  Four is not often seen, so you can trust that the others who have gone before you have fared well.   Each chapter is sprinkled with exercises to drive home the material being covered, as well as a summary and glossary of new terms at the end of each chapter.  In many ways, it reminds me of a textbook approach to learning a new language or technology.  I can imagine the teacher lecturing from chapter 4 and then assigning exercises 2, 4, and 5.  Unlike books that assume little programming background, this volume doesn't try and step you through setting up an IDE or anything.  It covers C++...  you need to get the IDE set up on your own.  Don't assume much in the way of handholding.  To me, this would be a good "geek-level" book if you wanted to learn the language.  No fluff, no laughs, just learning.  Probably best for someone who already has a background with technology.  If you're more in the camp of C++ being your first language to learn (you're braver than I am!), this might be too much and too hardcore.  Of course, your mileage may vary...

Author ID	AG35NEEFCMQVR
Useful Votes	9/9
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.88412017167382	0.0472103004291846	0.0386266094420601	0.0300429184549356
strives to be a definitive text on C++
[A review of the 4th EDITION 2005]  This is perhaps one of the most distinguished of the numerous books on C++. Its authors have a long involvement with the development and teaching of the language. The book presents itself as a definitive text on C++, much like Kernighan and Ritchie's C manual is for C. So it teaches exhaustively on the attributes of C++ and also on what you can do at the preprocessor and compiler level.   The presentation style seems to echo K&R and is roughly at about the same level of difficulty, in terms of how concepts and syntax are explained. No flashy multihued graphics in the book. The authors have eschewed these in favour of a few schematics to illustrate key ideas like pointers, where you really do need some diagrams.  As a very useful aid, they have included many exercises, sprinkled through each chapter. Some exercises are rather simple. Which is perhaps deliberate; to give you confidence in items you can easily tackle.   Not having seen an earlier edition, I am unsure how substantive the differences between this text and its predecessors really is. C++ has been pretty stable for several years. Unlike still changing languages like Java and C#. So if you have an earlier edition of the book, you may not necessarily need to upgrade to this edition.

Author ID	ALBCCGKTUHU1O
Useful Votes	59/60
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.948497854077253	0.0214592274678112	0.0128755364806867	0.0171673819742489
4th Edition is Much Improved
It's too bad that Amazon has listed reviews here which apply to earlier editions of the book.  This 4th edition is a very different book than the 3rd or previous editions.  (Any review you see here prior to February 2005, when this edition was printed, doesn't apply to this book.)  The front cover of this book says that more than 450,000 programmers have learned C++ from previous editions.  I wasn't one of them, though I bought and started to read 2 previous editions in the attempt to be.  I already new C very well and the approach taken in those editions bogged me down in too much detail that I already knew.  This 4th edition is a tremendous improvement over the others.  The material has been completely reorganized and updated and is much more effectively presented.  The text is sprinkled with highlighted tips, notes, warnings, and best practices that not only helpful in learning the material but in applying it well.  Each chapter is summarized at the end and has a glossary of  important terms and concepts.  Exercises at the end of each section make this book a good candidate for classroom use as well as individual study.  They even knocked 300 pages off the length of the 3rd edition!  If you want to learn C++ thoroughly and well using just one book, this is the book to buy.

Author ID	A3229I096VZBAM
Useful Votes	8/8
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.0
Topic Path Probabilities	0.875	0.0546875	0.0390625	0.03125
It's time to upgrade!
The previous editions (including the 3rd) of the book are all obsolete! This edition presents the language from a modern C++ perspective (post C++/98 standard), with emphasis on applications of the standard library, primarily the standard containers and algorithms. The standard library is still very under-utilized till this day, with many programmers still keep reinventing the wheels and laboring on things already provided by the library. With the C++/03/0x standard on the horizon, one is definitely much better served by upgrading to this edition and switching to the better way of programming C++ in terms of the standard containers and algorithms. By taking adantage of them, one writes more concise, more elegant, more robust, and in most cases more efficient code.

Author ID	A3CP1WGNTOSKDA
Useful Votes	26/27
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.996428571428571	0	0.00238095238095238	0.00119047619047619
Comprehensive, well written, well presented ... but....
Let me state up-front that this is an indispensable book for me, and, as a reference, or as a source for expanding a basic C++ capability, it's easily worth 5 stars, not 4.  In fact, as an intermediate-level C++ user, this is the most indispensable book that I have.  I have 15 C++ books on my shelf, and this one (the fourth edition) is the most comprehensive, even surpassing Stroustrup's tome in most areas. (Stroustrup's influence on Primer is pretty obvious in spots.) The book's depth and its style of presentation, however, will mean that it's not the best primer for newcomers, and that's why I only gave it a 4-star rating.   Look at the painting metaphor expressed on the front cover of the book.  This book is more than a primer: it's a full pallet of colors, and as such is more than a beginner "painter" will be able to put to use quickly.  I need to clarify what I'm saying here.  You might ask how a book can be the most comprehensive available without being longer in page count.  The answer comes down to style.  This book rarely expends space on full-length, executable code examples.  The treatment of nine out of ten subjects offers only snippets of code - not complete executable examples.  Many books offer examples that take up multiple pages for the code and multiple pages for the line-by-line explanations of the code.  This difference in presentation is the single biggest reason why C++ Primer can offer so much more thorough coverage of C++ language features in fewer than 900 pages.  The downside is, if you intend to learn C++, you absolutely must experiment with working code - there is no other way.  The fact that this book does not offer much complete working code means that you will have to spend more time getting yourself set up to experiment. This will be especially true if you are a beginner, just because it will be harder to get things working.  The conciseness of code examples is matched by conciseness of explanations.  In this regard, however, I have found no downside:  the vast majority of explanations are extremely clear to the point of elegance.  I've found only a few flaws in clarity, which are probably left over from earlier editions.  The tremendous depth of this book will be another weakness for newcomers to C++ who need to get started quickly. In my opinion, you just can't get started quickly when every treatment of every subject has to cover all of the ins and outs of that subject. There are too many subjects and too many ins and outs. If you try to go straight through the book, you'd better be prepared to work lots and lots of problems along the way: it will take so long to get through it that if you don't practice as you go, you may find yourself forgetting almost as fast as you're learning.    The other side of the coin is this:  if you really do take this book, work through it from start to finish, and really master the material, you'll have a fantastic knowledge of C++.  I seriously doubt that three good college courses in C++ - assuming no prior programming experience - would teach as much.  The fact that you'll have to develop your own working code to demonstrate each feature will, like the depth of treatment, make you a better programmer, even though it seriously slows you down in the process.    You can conclude, then that if you are a newcomer to C++, and especially if you are inexperienced with programming in general, this book will be a long, hard climb. I'd be willing to bet that fewer than 5 percent of purchasers of this book start at the beginning and work straight through.  Even so, if you are a newcomer taking a C++ programming class or just using another book to get started, it will be valuable for parallel reading and will come in very handy when you want to do a deep dive.  Finally, don't forget that if you have a basic grounding in C++ fundamentals and you want to grow from there, this is a dynamite, five-star opportunity.   I feel like I have to elaborate here a bit as well.  Time after time after time, when I've wanted a better understanding of a really fine point on the language, I've turned to this book and been rewarded for doing so.  Every single subject is explained fully and, in most cases, eloquently.  You can learn to do a lot quickly in C++ using other resources, but C++ offers the ability to fine tune and get close to the hardware.  This book will make you better understand what the compiler is doing.  The authors took the time to make extensive use of cross-references, which are invaluable in a subject this complex.  The explanations, bolstered by cross-references, tend to leave me more than satisfied that I've gotten a grip. When I finish a section and have some example code executing, I feel like I have a complete understanding:  I rarely find myself asking, "... but what about ...."  I could go on and on, but you get the message.  (One reason I'm taking the time to write this is that I feel indebted to the authors!)  The book builds up a consistent set of semantics - more so than any other book I've read.  One example is their thorough explanation and consistent use of the terms "declare" and "define."  Another is example is "argument" and "parameter list."  Unambiguous semantics are essential to unambiguous communication, and, as you know, programming is one of the most unforgiving disciplines there is; ambiguity is intolerable.  This attention to detail pervades the entire book, beyond just semantics.    Also, like with Stroustrup's book, I don't have to worry about whether the authors got it right or wrong or only half-right. This is an authoritative work:  these guys know their subject as well as they know how to communicate it.   I especially like the dark page summaries and glossaries that act as chapter boundaries. I like the highlighted notes, tips, "bewares," and best practices. I like the blocks of text that address "cautions." These features are value-multipliers for me.   I also appreciate that there is absolutely no subconscious assumption that you already know C. That assumption seems to creep into so many other books, even though the authors deny it.   I agree with other reviewers that this edition is a huge improvement over previous editions. (I have the second edition beside me as I write this.)  Frankly, I don't like the earlier editions.  My guess is that the new authors, who came on board for this edition, should get a lot of credit. (I know an absolutely brilliant guy who has done some real innovation with C++.  For example, he wrote a C++ library that allows you to write C++ in Python style, while getting C++ performance.  This same guy was so intimidated by an earlier edition of Primer that he put off trying to learn C++ for several years!  I'm still trying to convince him to get the fourth edition!)   So the fourth edition is a vast improvement, but, assuming that we don't try to make it all things to all readers and stick with the objective of compact comprehensiveness, how could we improve it further? The code examples could be simpler. I think Schildt is the master of communicating through code examples, just because his examples do the best job of isolating on the subject at hand. C++ is an extremely broad language, and when I read about a concept, I don't want to be expected to know everything, especially code examples, that preceded it in the book.  Primer could do a better job - at least for me - in that respect. Examples should not be codependent:  each example should lean only on the preceding material as much as is necessary to get the point across.  All experts agree that the best code is code that is easily readable.  In a tutorial, the meaning of the code examples should jump off the page.  Primer is not bad in this regard, but it could be better. (Some will argue that leaning on previous material reinforces the learning of the material, and they will be right.  In my opinion, however, that argument applies mostly to course textbooks where the learning of diverse features can be forced into a tightly channeled sequence.)  I often use Schildt and Holtzner for reference when I need a quick answer. (As an aside, Stroustrup's book is the worst, for me, in terms of code examples being unnecessarily complex and codependent, even though I consider his book second only to this one as an indispensable reference.)   Bottom line: C++ Primer is an amazing accomplishment.  The authors have done the best job to date of sorting out and presenting in lucid fashion a vast and complex network of features.  I speak from experience as a technical writer as well as a student of C++.  I feel guilty for assigning only four stars, but I'm concerned about the newbie who sees a 4-star rating on a "primer," and rushes to spend his limited budget on this book as a sole reference.  C++ Primer is a very wise investment if you are really serious about C++, whether newbie or expert, but most newbies will also need a primary resource that is more beginner-oriented.  Other books I recommend, in addition to the ones mentioned previously, include Prata (a good tutorial and a good resource for complete code examples, although there is significant codependence of examples); Lafore; Josuttis' classic STL book (definitely not for beginners); Schildt's STL book, also for its code examples; Keough and Gray (for quick reference only); and Safir and Brown (which does assume that you know C).

Author ID	AMCDD1NC6ZPG8
Useful Votes	6/6
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.99388379204893	0.00458715596330275	0	0.00152905198776758
Learn to become an efficient C++ programmer from the start
The traditional way to teach programming, especially C++, has been to introduce the basics of the language and building on top the basics as the book progresses.  Lippman, et. al. have diverted from the traditional way of teaching C++, which leaved the reader with a better understanding of the topic and the language as whole.  Instead of creating yet another "C++ Reference Manual", which in turn gives the reader a very detail description of the language, the authors have focused on the effective and current best practices in C++ from the get go.  The Standard Template Library is introduced early on in the book, and the readers begin to experience "how things are done in the real world" early on, instead of waiting until the end of the text.    C++ is a powerful language; more importantly, it is language that gives its users plenty of power.  Enough power and freedom that if not tamed, could become very dangerous.  Unlike some other "newer" programming languages, C++ has the ability to manipulate the lowest levels of the system: hardware and the operating system.  The authors took this notion into consideration and wrote the book in such a way that proper programming techniques and methodologies are "forced" from the beginning.  Programming in C++ also requires a different mind-set as well: objects, classes, inheritance, polymorphism, etc...  These are topics best understood by example.  The standard template library (STL) is the best way to show the users how the most powerful techniques in C++ are being utilized.  Starting with the String and the Vector classes, the authors walk a very fine line of teaching the novice users about the ins and outs of the language and others how to best take advantage of the available libraries that are provided with the language.    To new readers of the language this approach might seem a bit difficult to grasp, but the fact of the matter is that C++ is not an easy programming language to learn.  If you are serious about learning C++, what better to learn the language than learning the right way from the start?  It might seem a bit overwhelmed at first, but that's ok.  There is a glossary of introduced terms at the end of each chapter, along with a summary of topics covered.  At the beginning of each section (part) of the book, the authors give an overall summary what's to come, and why these topics are covered when they are.  The same goes for the beginning of each chapter: a summary of what's to come begins each chapter before the material is covered in detail.  The authors realize that the approach might seem a bit unorthodox, and take extra care in making sure the readers are not overwhelmed with information.  For people with C++ experience, you will appreciate this method of teaching a lot more.  The readers are exposed to "important" C++ terms and phrases from the beginning instead of waiting until the last couple of chapters of the book.  Other than the format change, and updated material to comply with the latest ANSI C++ standard, this book has updated examples the source code for which can be downloaded from the book's web site.  There is C programming coverage in this book, which is very good.  The programming style is C and C++ are inherently different (procedural and object-orientation), and talking about C would simply confuse the readers.  The book's focus from the beginning to the end is how to best utilize and write programs in the C++ programming language: how to become an efficient C++ programmer.  I recommend this book to anyone interested in learning the C++ programming language.  If you have used C++ before, this book is still a valuable addition to your library, as it covers C++ with efficiency and proper programming style in mind.

Author ID	A250BI36M1IR26
Useful Votes	4/17
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.878048780487805	0.024390243902439	0.024390243902439	0.0731707317073171
good, not great book on C++
C++ Primer is a good, but not great book on C++.  If you need a procedurally oriented text, go elsewhere. but if you need a quick an dirty intro to C++, this is not bad.

Author ID	A9NUY5E8DPI39
Useful Votes	3/3
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.9	0.0363636363636364	0.0636363636363636	0
Good, but not for beginners.
Don't let the title fool you. The "primer" in the title refers to those who need a primer in C++ and not those who need a primer in programming. Even so, this book is best suited for someone who has a C++ background from texts such as those by Deitel, Tony Gaddis, Walter Savitch, or Ivor Horton. Note also that there are NO SOLUTIONS for any of the problems - most other college texts at least have limited solutions for students. Ultimately, this text is best used as a reference to accompany some other text that is actually meant for students and not working programmers.

Author ID	A2HK07UTWXJ6SD
Useful Votes	9/10
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.80952380952381	0.0892857142857143	0.0833333333333333	0.0178571428571429
A Classic Reborn
This is one of the most readable C++ books available today. The formatting and layout are expertly formulated to clearly get information across with minimal impedance. Their use of callouts and shading is enabling but not noisy. The ordering of topics is artful - learning vector, string, and simple iteration right of the chute is the Right Thing. The authors teach what you need when you need it as you learn C++. I like the way they present usage of the C++ library, especially of containers and algorithms, before they even mention how to define your own classes. This encourages the right mindset for effective C++ programming. Wisely, they leave topics important to production programming (exceptions, namespaces, multiple inheritance, RTTI) and other gnarly issues (pointers to members, local classes) to the end. Anyone with familiarity with at least one other programming language should be able to get up to speed with C++ As Nature Intended with this very readable book.  -- Chuck Allison, Editor, The C++ Source

Author ID	A2QLXL8054EQTY
Useful Votes	2/2
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.971631205673759	0.0141843971631206	0.00354609929078014	0.0106382978723404
thorough treatment, well written, too many typos
I've been programming in C for 25 years.   In the last 15 years, I've read a number of C++ books (I even read the first half of Stroustrup's 3rd edition.  This was the first treatment I've read which I really absorbed (part of the fact is I had to learn c++).  While the treatment is thorough, I found far too many typos in a 4th edition.  I really help typos in a technical book where the characters in an example MUST be right for it to work.  Barbara Moo gave me a copy of the errata (I submitted a number of errors I found).  But one of the MAJOR shortcomings is why do I have to look up the author's to get an errata?  Shouldn't the errata be on Addison's web site? (I just looked -- its not there -- I sent them a message).  Also, be able to find the answers would be valuable (For a reader, examples without answers don't necessarily help much).  I don't think its an introductory programming book.  I just looked up the word "primer" -- this book goes far beyond what a "primer" would contain.  It covers C++ in depth.  A number of subjects are covered in a way so a range of solutions ot problems are presented from bad to good to introduce new features.  One thing I missed was full examples of working programs, being dissected.  There are a lot of snippets. not whole programs.  I find larger examples would be a good teaching tool.  Overall, this is a very positive review -- the best,  most thorough treatment I've read -- with some caveats.

Author ID	A357JAI4OQTAY5
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.866666666666667	0.0571428571428571	0.019047619047619	0.0571428571428571
Hard to believe the best got better
Having owned the previous edition of this book, I've always felt that it was the best book for learning for beginners, and for gaining a higher understanding of the language for intermediate C++ programmers.   With the addition of another great author, I just had to get the new edition, and wasn't dissappointed.  Although I haven't read the new edition in it's entirety, I have used it on occasion for reference, in which case I can see improvements over the previous edition.  It's replaced my usage-warn copy of the previous edition very well.

Author ID	A2G7F4NFBKXUTJ
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.883116883116883	0.0909090909090909	0.025974025974026	0
elaborate and comfortably understandable
I really agree with the previous reviewer (Paul M), giving this book 5 stars. this book gives very understandable explanations with examples after each, since as I understood from my practice, it is really hard to imagine what the writer is explaining  about, without practical programming examples. On the other hand, the book is not so verbose, and you don't completely get tired until you understand one thing, saving much of your time.

Author ID	A2CQ6N3PWGW5OE
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.914893617021277	0.0212765957446809	0.0425531914893617	0.0212765957446809
The Best C++ Book
This is by far the best C++ book I have ever read. It is comprehensive, explanations are simple and to the point, and, up-to-date. I am referring to the 4th edition, of course. The earlier editions might be a bit outdated.

Author ID	A1RMH90VVFYHL9
Useful Votes	5/12
Rating	3
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.940568475452196	0.020671834625323	0.0155038759689922	0.0232558139534884
Disappointing
Given the distinguished list of authors, I was expecting better than this. Some of my complaints include: - Badly written English exposition (not in all chapters) - Inconsistent formatting of code - Rationalization of "write-only" idiom as "mainstream" - Foundations not always laid for advanced commentary  As this is called a primer, it should have been written with fastidious care, always defining terms before using them, and fully explaining comments that might be abbreviated for old hands. This turns out not to be the case. First of all, some of the English constructions are badly flawed: a sidebar with a sentence comparing one technique to another unnamed technique.   One of the less endearing qualities of C++ is the use of { and } to enclose code blocks. Most authors and coders agree that a consistent style must be used, else it is all too easy to miss these too-slender signals; C++ Primer does not use them consistently.  The book presents many tips on usage and "best practices", and these are most welcome (or would be, if better written), but at times, they argue not for better usage, but for the reader to adopt idiomatic usage, even where it tends to be obscure and not very readable, simply because "many other programmers use it." There are also millions of VB programmers still spewing out spaghetti code, but that's hardly a case for doing the same!  Some of the advice given, and topics introduced, are dependent on an understanding of issues that haven't been discussed. This is a grievous error in a book by such experienced coders.  To give credit where due, the book starts rather well, but as it reaches the topic of pointers, it seems to fall apart, syntactically, in both code examples and exposition. Perhaps this was a point where the writing changed hands?  Also, in fairness, I have not read the entire volume yet, but the number of complaints accumulated in the first 250 pages is alarming.  I've given 3 stars because the breadth of coverage is good, and because there is much in the book that is worthwhile, if you are a reasonably experienced programmer, but I cannot recommend the book for those new to the language, unless their experience is in C. For those coming from other languages, a different book may be more useful.

Author ID	A1S8ME9YNKBKO6
Useful Votes	4/4
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.901041666666667	0.0572916666666667	0.0260416666666667	0.015625
Excellent book for experienced programmers
This is a wonderfully well organized and well written book. The writing is clear; the examples are well thought out; the extra notes, warnings, hints and other sidebars are illuminating. For anyone with previous C/C++ programming experience who wants to improve their understanding of the language, this book is the one to read.  I found the order of topics to be a little unconventional, but before I finished reading, I became convinced that this is one of the book's strengths. How to use a feature is presented before discussing how to create that feature. For example: How to call a function is discussed before the presentation of how to write a function. Similarly, how to use the template classes in the standard library is described before talking about how to create a template class. I found this to be an effective presentation technique. It reflects the reality of programming in most modern development environments. All developers use encapsulated components that are provided by others and appear as black-boxes to us.  This is a high quality book. The authors should be commended for their accomplishment.

Author ID	A38ZXVGY3Y763O
Useful Votes	2/6
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.916666666666667	0.0583333333333333	0	0.025
Exactly What I Was Looking For
I am in my final year of highschool and heading into computer science next year at university. I have taken (very simple) introductory programming courses in high school and have learned PHP and Java from "teach yourself" books on my own. I was looking for a book to quickly bring me up to speed in the world of C++ programming, and this is just the book to do it. As long as you have some experience using an object oriented programming language, this book this book is for you. However, if you are new to programming in general, you'll probably need to work though a "Teach Yourself in 21 Days" before tackling this one :-)

Author ID	A2RCBPKMSVPBR8
Useful Votes	2/3
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.814814814814815	0.0925925925925926	0.0462962962962963	0.0462962962962963
Answers are available online.
You may know that an answer book was not released for the fourth edition as was done for the third edition.  I've began reading this books weeks ago and while I think highly of its design, my limited exposure prevents any critical review.  The real point of this comment is to help others in choosing this book by revealing the answer to the first third of the book can be found online. Check out http://cppprimer.jesseolmer.com/index.php?title=Main_Page. At this point the answer key runs up to ch. 7, and I believe it's still receiving updates and additions.

Author ID	A177DGCPRSN03T
Useful Votes	0/7
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.6	0.35	0	0.05
An errata is needed!!!
I found quite a few typos on my first reading. Dear authors, please post an errata!

Author ID	A2ROAJW96QEGUM
Useful Votes	1/13
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.944444444444444	0	0.0555555555555556	0
Excellent!
very newbie friendly :)    I have not finished it yet but I like what I see so far!!

Book ID	Title	Number of Reviews
0137903952	Artificial Intelligence: A Modern Approach	30

Author ID	A2E3F04ZK7FG66
Useful Votes	10/10
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.949056603773585	0.0132075471698113	0.0226415094339623	0.0150943396226415
Best Comprehensive text on AI
I didn't think that the first edition of this book was as bad as some of the reviewers said, but the second edition is definitely a vast improvement. It's not just some obligatory 2nd edition that some authors release to say that they are staying actively published. The first edition was somewhat confusing in its explanations and the exercises were really blurry on what was being asked. All of that has now been resolved.  The book is a comprehensive and insightful introduction to artificial intelligence with an academic tone. It provides a unified view of the field organized around the rational decision making paradigm, which focuses on the selection of the "best" solution to a problem. The book's overall theme is that the purpose of AI is to solve problems via intelligent agents, and then goes about specifying the features such an agent or agents should have. Pseudocode is provided for all of the major AI algorithms. Being about the broadest book in terms of coverage of AI, you should therefore not expect it to be the deepest in coverage. However, each topic is covered to the extent that the reader should understand its essence. Sections one through six are absolutely wonderful, and comprise the "meat" of AI. Section seven is rather weak since it tries to cover both robotics and text processing in their own individual chapters, and entire books have a hard time covering this material. Section eight is different from the others, since it talks about the philosophy and future of AI.  Another plus for this book is that there is a great deal of extra material that deals with standard AI curriculum. For example, the chapters on logic not only include the typical introduction to propositional and first order logic together with the usual inference procedures, they also give many useful hints how to use first order logic to actually represent aspects of the real world such as measures, time, actions, mental objects, etc. These chapters also contain much information about how to implement efficient logical reasoners. Finally, this second edition has an excellent website that can be found by going through the publisher's webpage for the book. This website contains four sample chapters, pseudocode, and actual code in Java, Python, and LISP. I notice that Amazon shows the table of contents from the first edition, so I am showing what the actual table of contents is for the second edition for the purpose of completeness. Note that the book has been significantly reorganized. I. ARTIFICIAL INTELLIGENCE.   1. Introduction.   2. Intelligent Agents.  II. PROBLEM-SOLVING.   3. Solving Problems by Searching.   4. Informed Search and Exploration.   5. Constraint Satisfaction Problems.   6. Adversarial Search.  III. KNOWLEDGE AND REASONING.   7. Logical Agents.   8. First-Order Logic.   9. Inference in First-Order Logic.  10. Knowledge Representation.  IV. PLANNING.  11. Planning.  12. Planning and Acting in the Real World.  V. UNCERTAIN KNOWLEDGE AND REASONING.  13. Uncertainty.  14. Probabilistic Reasoning Systems.  15. Probabilistic Reasoning Over Time.  16. Making Simple Decisions.  17. Making Complex Decisions.  VI. LEARNING.  18. Learning from Observations.  19. Knowledge in Learning.  20. Statistical Learning Methods.  21. Reinforcement Learning.  VII. COMMUNICATING, PERCEIVING, AND ACTING.  22. Agents that Communicate.  23. Text Processing in the Large.  24. Perception.  25. Robotics.  VIII. CONCLUSIONS.  26. Philosophical Foundations.  27. AI: Present and Future.

Author ID	A3LFYYZZD1RNH
Useful Votes	6/19
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.76271186440678	0.0847457627118644	0.0847457627118644	0.0677966101694915
Good book , Computer Science majors only!
Good coverage of rationality, the structure of agents, search algorithms, and decision trees. However, the book is highly theoretical and mathematical, it would not be appropriate for any business majors.  I teach Information Systems in a college, I still use Kurzweil's book because I cannot find anything better suited to our needs.

Author ID	A370O39F15GK89
Useful Votes	25/26
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.883928571428571	0.0625	0.0178571428571429	0.0357142857142857
Stunning textbook--best I've ever used
Until recently, my Algorithms book was my favorite text book ever.  However, AI: A Modern Approach has supplanted it.  This book is the most thoughtfully designed, easily understandable, clear text I've ever used in over 28 years of attending schools.  I really knew nothing about AI when I took my first grad class in AI, but this book, along with a pretty great instructor, has been a wonderful resource, more than any other book I've used.  I have not need to google for more information or speak to the professor.  The answers are here--clear and concrete.  Have no fear and trust this book!

Author ID	A1DDAP4XQJJX8D
Useful Votes	2/3
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.825396825396825	0.0793650793650794	0.0476190476190476	0.0476190476190476
Comprehensive
This was my introductory text to AI and I admit that I've read only the first edition of this book. However, while browsing through the 2nd edition in a bookstore I found that the things that annoy me are still there - the pervasive taxonomy of tomatoes and the simplistic philosophy are just not appropriate for a book that tends to be considered the Bible of AI. It is otherwise a great and well-targeted book and I enjoyed reading it. The second edition seems to have grown a bit bigger, including such topics as the EM algorithm, which I find very good. I heartily recommend it to anyone new to AI, except if you're really afraid of finding out how tomatoes are classified :)

Author ID	A7R1BFC0SNLSK
Useful Votes	11/11
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.934306569343066	0.0145985401459854	0.0364963503649635	0.0145985401459854
An `ok' general purpose book on AI.
This is currently the best general purpose book on AI (the field). It is by no means the best book on any individual topic though... but I guess that wasn't the point of the book to begin with.  I'm not particularly happy with this book though. I think it's the language, or the examples, or something, but often it's just not `clear'---not as intuitive as I'd like. Many teachers seem to use it in a `general purpose course on AI' though (not anything particularly detailed, so it's `ok'---there are worse books on the subjects).  In short: as a general purpose AI book on everything, it does its job, but don't expect it to be anything other than a glorified field overview.

Author ID	AAHTFTIFZ5VFK
Useful Votes	3/4
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.883928571428571	0.0446428571428571	0.0491071428571429	0.0223214285714286
A Pleasant four-week walk through the field
This is my first book in the field of AI and I really enjoyed reading it in a three-week vacation (four weeks would have been a little more relaxed and appropriate). I am not a computer scientist but could follow most of the book easily (Well I do have a strong mathematical background.). The book is not very formal, but still based on sound arguments. It has a tremendously wide range of subjects incorporated: both within AI and between disciplines as differently as Philosophy and Operations Research. Nearly every one of them is dealt with at an excellent level. Only the physics parts in the perception and robot chapters are a little mediocre in presentation quality. Anyhow they are pretty much at the end of the book.  Also I liked very much the extensive historical overviews. The book contains lots of reading recommendations to explore further fields. I would have liked solutions to selected problems. The books print is laid out fine and with a lot of care. A two-column layout might be for the width of the book more appropriate. I read the international edition (2nd), which is paperback. This book is very heavy and it took quite a bit of ability to hold it reasonably comfortly over the many reading hours required.

Author ID	AQXCOAJHGHIPA
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.796116504854369	0.116504854368932	0.058252427184466	0.029126213592233
Required Reading- Wow
Artificial Intelligence: A Modern Approach (2nd Edition) by Stuart J. Russell was a required reading for my studies (algorithms).. It is an absolutely wonderful text, covering nearly all facets of AI from robotics to building a knowledge base.  While most of my other college texts were returned to the book store once the class was finished- this one did not.  The wealth of information within will serve valuable time and time again. I also had to read Human Interface by Jason Giacchino this semester.  A fiction novel that will also avoid going back to the campus book store- highly recommended.

Author ID	AK9Z44QGP29YI
Useful Votes	3/3
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.794871794871795	0.0854700854700855	0.0427350427350427	0.0769230769230769
Good but limited
This is probably the most up-to-date single textbook introducing Artificial Intelligence.  Unfortunately, it presents a limited view of the field by chosing not to cover the vast area of AI that deals with cognitive modeling.  The authors are up front about this decision and define AI as the study of agents that act rationally [Preface and Introduction] and specifically choose not to address the schools of thought and ongoing research in AI that consider "Systems that think like humans" and "Systems that act like humans" [Introduction].  What's covered is done well.  Students of AI and other readers will need to augment this text for exposure to the rest of the discipline.

Author ID	A3TYB66A2ZDMCN
Useful Votes	3/6
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.797619047619048	0.119047619047619	0.0476190476190476	0.0357142857142857
Outstanding AI Book
Amazing effort in compiling historical roots, facts, concepts, applications from a relatively recent formal discipline (about 50 years old) and always in evolution, very inspiring piece of work I must add. This book goes from the very AI concepts towards the depth AI modeling methods analysis with clear and easy explanations beyond any other book I have ever read. A must for every AI enthusiast, reader, teacher and student, highly recommended if you want to contribute to this science even by yourself.

Author ID	A2KHTEMN7B6BJD
Useful Votes	3/7
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.590909090909091	0.272727272727273	0.0454545454545455	0.0909090909090909
Great book
Great book. Very detailed introduction to concepts in AI.  Was cheaper than used copies at my school's bookstore, too!

Author ID	AFHH260G259JW
Useful Votes	7/10
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.75609756097561	0.0731707317073171	0.0731707317073171	0.0975609756097561
Great book
This is a great book for anyone who wants to get serious on AI algorithms - it has a vast coverage of most well-known algorithms and techniques, not only presenting them, but also analyzing their performance and possible uses.

Author ID	A23XKPORT7QXRK
Useful Votes	9/17
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.818181818181818	0.0743801652892562	0.0661157024793388	0.0413223140495868
TRIVIAL EXAMPLES
While the substance of the material is definately present, beware the examples!  This text is yet another example of how as the difficulty of the material increases, the complexity of the examples given decreases.   Be prepared for trivial examples in the chapter and complex questions in the exercises - why are you wasting our time Russell and Norvig???  If you are an instructor thinking of using this book, PLEASE be prepared to create examples OF YOUR OWN.  It will not be sufficient to lecture directly from the text.  If you are a student taking a class that uses this text, GOOD LUCK!  I hope you have a good TA, or a lot of time to waste solving problems without examples.

Author ID	A8RSSMVTD9JHR
Useful Votes	9/9
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.915384615384615	0.0307692307692308	0.0384615384615385	0.0153846153846154
Rigorous view of AI
The book offers mathematically based coverage of the most important topics in AI. It has a very pragmatic view and does not spend too much time with the over-hyped topics, such as fuzzy logic, genetic algorithms. Instead, it provides clear and easy to understand examples for most of the introduced concepts.   The text requires some knowledge of computer science, mathematics, and statistics. Sections on topics that require extensive outside knowledge, such as computational learning theory, are not covered very deeply, but usually offer nice insight to the concepts and basic principles.  I recommend this book both for beginners to exact AI as an introductory text and to more experienced researchers as an invaluable reference. I found it to be the most useful book I own.

Author ID	A1L5L2XE64L872
Useful Votes	0/11
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.851851851851852	0	0.0740740740740741	0.0740740740740741
good book
in hindsight this was a good book...i used it a lot because i couldn't understand my prof very well...i got an A

Author ID	A2NTK4SFN4DIM3
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.827586206896552	0.0775862068965517	0.0431034482758621	0.0517241379310345
Great so far.
I am taking an artificial intelligence class and am very satisfied with this book so far.  The material isn't presented in an overly complex fashion yet you are not left with a subset of the information.  While it may not have the lasting power of say the the Redbook(for OpenGL), it does do the trick and from what I have seen this is the best option out there.  I also have to give props to Amazon.  When making my order there were some problems with shipping and it got sent overnight rather than super savings.  I notified amazon and was refunded the shipping.  Great service.  Great book.  What can I say.

Author ID	A2318FOUAO95IR
Useful Votes	3/20
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.764705882352941	0.117647058823529	0.117647058823529	0
the book is an excellent material
the book enters all the aspects of AI today and tomorow.

Author ID	A36MIUT9KIB161
Useful Votes	2/4
Rating	3
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.755555555555556	0.0666666666666667	0.111111111111111	0.0666666666666667
Comprehensively Extensive
the book is the most cohesively extensive I have ever read regarding the subject. Although AI is a very broad and evolving discipline, the authors have successfully lay down the foundation of the science and elucidate the important and promising aspects of AI.

Author ID	AHSKP792H7LZ1
Useful Votes	5/7
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.982996811902232	0.00637619553666312	0.00425079702444208	0.00637619553666312
the best AI textbook available now
Comments from my students Comments on AI: A Modern Approach Having used this book, I have found it to be an excellent overview of modern AI techniques. In fact, I knew nothing about many of the subjects in this book before this course, and this book has helped intrigue my interest sufficiently into the field.  This book uses an intelligent agent as the unifying theme throughout. Namely, the problem of AI is to describe and build agents that receive percepts from the environment and perform actions, and each such agent is implemented by a function that maps percepts to actions. It covers different ways to represent these functions, such as production systems, reactive agents, logical planners and decision-theoretic systems. It explains the role of learning as extending the reach of the designer into unknown environments, and shows how it constrains agent design. All in all, the book is quite readable and well organized. In addition, the references to important works in the field were extremely useful, especially since many of them are now available online. Whats more, these exercises are complete and thorough. They cover the entire breadth of the chapter, and each are detailed enough to challenge the students as more than a trivial problem. While each topic is treated carefully and explanations are clear, unfortunately the book would run to many volumes if each topic was covered completely. Since this is not the aim of the book, this is not a drawback. AI:AMA is, after all, an introductory text to AI used in many undergraduate AI courses. Every one who is learning AI should have this book on their shelf.  Student ID: 0020309059 Comments on Artificial Intelligence-A modern Approach I think this book is the leading textbook in Artificial Intelligence I have ever read. The Artificial Intelligence is a big area, this book give me a whole view of it. Besides all those good idea in this textbook, I think there is flaw in AIMI 2nd.  First of all the whole book doesnt have a detailed example that can lead reader the way to build AI application from scratch although there are many little examples and figures in the book.  I think AI is a practical subject. Second, Agent is hot and useful in AI now. I think there should be more pages on Agent and the application of Agent. Comments on Artificial Intelligence-A modern Approach I think this book is fairly valuable both for the beginners and for the specialists. This book has the following three characteristics compared with the books on AI that I read before: A new perspective of building intelligent agents: The book is organized around intelligent agents: what the ideas of agent are; how they make decisions and get information; how they learn knowledge. From this perspective a wide array of materials on AI is well organized and presented to the readers clearly and readably. Finished this book, I found myself have attained an overview of Artificial Intelligence. This text book is organized using the latest principles of good textbook design. It includes historical notes at the end of every chapter, exercises, margin notes, a bibliography, and a competent index. The historical notes are much helpful to me, from which I could get much information on the corresponding domains and I could read more that I am interested. The text book contains many valuable and comprehensive examples to illustrate the ideas it presents. The exercise is also good. They are both helpful to me to grasp the knowledge of AI.   Besides those small examples which are responsible for illustrate the basic ideas and concepts, one or two big examples which illustrate the process of building practical artificial intelligent systems must be helpful to us. I am a graduate student who major in Computer Science. I use the book Artificial Intelligence as my textbook in the course of AI. After one semesters study, I find this book is a good one. As we all know, AI is a big field, and it is very difficult to write a good book of AI because that book must be a big one. But the style, the concept and the practicability of this book are excellent. Firstly, when I read the book, I was deeply absorbing by its style. It describes the key concepts of a problem and its solution first, then give examples, and finally give a theoretical explanation, with rigorous theoretical analysis where appropriate. The point of the theory is always to get the concepts across and explain how they are used in actual, fielded systems. During the course of my reading, I had a clear mind. I could find the right reason why this problem could be promoted, whats the mathematic model of it, and how it could be solved in several methods. Secondly, I enjoy the concept of the book. I think the writer must have a good sense of humor. I clearly remembered I fell into a big laughed when I read the example that if you left your car outside all the night, you might find your spare tyro missing next morning. What a funny story it is! Finally, the practicability of the book is good. Because of its comprehensive coverage and large number of detailed algorithms, it is useful as a primary reference volume for me. Just as Prof. Tom Dietterich has said: I recommend it to anyone who wants to have an introductory overview of the state of AI. And I recommend it to experts in the field, who will enjoy its unified description of the field.

Author ID	A1D7XC5R7EWKSF
Useful Votes	1/3
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.88	0.12	0	0
Really good
The material clear and has the depth required for detailed study. I am still reading but I have enjoyed it thoroughly uptil now.

Author ID	ADPYV4QCS8QPF
Useful Votes	1/5
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.679389312977099	0.183206106870229	0.0610687022900763	0.0763358778625954
Stuart J Russell and Aaron Kalvani on Artificial Intelligence
I read this along with the white papers by Stuart Russell and can say that The Artificial Intelligence Laboratory at the Vrije Universiteit Brussel, or short VUB AI-Lab, was founded in 1983 by Luc Steels and is part of the Computer Science Department,and compares well after reading this book on how to apply both to each other.   Over the years, more than hundred researchers have worked at the laboratory. They have built a large number of artificial systems to investigate aspects of intelligence: Aaron Kalvani worked on the knowledge systems, autonomous robots, machine learning systems, natural language processing components, design and implementation tools. This was then applied using Stuarts Theories which advanced the AI Science on to stage two. Facinating reading.

Author ID	A3A9ZF6ONZ0H58
Useful Votes	1/25
Rating	3
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.80952380952381	0.0952380952380952	0.0952380952380952	0
Average book
Always good to see yet another book on AI.  Not a bad addition to the library.  Not well written

Author ID	ADF6QL5VFEY9M
Useful Votes	2/11
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.177777777777778	0.6	0.155555555555556	0.0666666666666667
EStou muito satisfeira com a minha compra e com os servios da Amazon
Realmente, estou muito satisfeita com a compra que fiz e com a forma com a Amazon tratou meu pedido. Foi recebido no prazo estipulado. Sempre estarei comprando com a Amazon.com

Author ID	A1FY6STDD8HO5
Useful Votes	0/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.9	0.05	0.05	0
great book
This book is a great book in AI. It covers broad AI topics. It is easy to understand.

Author ID	A22HUYPROH4A7X
Useful Votes	0/37
Rating	2
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.90625	0.0625	0	0.03125
too many examples
I had to buy this book for my study, but I don't really like it. There are too many examples, which takes a lot of time to read.

Author ID	AI8CH8A9B2YTX
Useful Votes	1/1
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.75	0.15	0.05	0.05
Great College Text
This is the text that I learned AI from and has served me well over the years.

Author ID	A14L0T9ND3JM26
Useful Votes	7/9
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.923611111111111	0.0277777777777778	0.00694444444444444	0.0416666666666667
great AI textbook
We used this textbook for the introductory and advanced AI classes at my university, and I was very impressed with it. The book's coverage is comprehensive, but more importantly the explanation of concepts is both clear and interesting. The authors clearly have a mastery of the material, but at the same time they seem to understand how to present it in a clear and understandable fashion. The quality of the writing and editing is high -- I noticed a single trivial typo while reading a few hundred pages of the book fairly intensively. I would guess the authors' really enjoyed writing the book; certainly from the result it seems that way.  Overall, this is among the best textbooks I've ever used, and it's certainly something I intend to refer back to -- and probably reread -- in the future. Highly recommended.

Author ID	A1WNHZCEXWDVX4
Useful Votes	3/4
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.878378378378378	0.0540540540540541	0.0540540540540541	0.0135135135135135
Still the best modern AI book available.
I had finished reading this book 3 months ago. My comments are :- - It covers most of modern AI topics. - It is quite easy to understand in some topics. Also quite hard in some topics. - It is well-explained, but will be great if they used a more understandable way. This book is suitable for a CS-student, or anyone who interesting in AI (But require some CS background).

Author ID	A7KA8W9FI6BM4
Useful Votes	0/1
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.905263157894737	0.0526315789473684	0.0210526315789474	0.0210526315789474
A comprehensive and extensive book but ...
i got this book from my local bookstore. This book covers most topics in AI. It is more comprehensive than most AI book i have read. However i dislike the writing style employed in this book. The author needs to refine his writing style and review the contents to include more interesting examples and some humor. It is not wise to have long paragraphs in thick books. The author should also include pratical examples of AI applications and some AI codes instead of general theories. Still a great book !

Author ID	A1L1ASFHGTBQEK
Useful Votes	5/6
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.0
Topic Path Probabilities	0.925742574257426	0.0247524752475248	0.0198019801980198	0.0297029702970297
The most comprehensive book on AI
Artificial Intelligence: A modern approach is definitely the most comprehensive book on AI I have come across. The latest edition covers everything from KR & Machine Learning to Robotics and Statistical learning, and has new chapters on Constraint Satisfaction Problems and Planning.  Artificial Intelligence has diverse branches and it's hard to see the correlations between them. This book manages to take a very innovative "agent" approach and tries to show some parallels between very disparate methods. In my opinion, each branch of AI has made great progress by itself but more work needs to be done in trying to combine the different approaches together and create more comprehensive systems. The book does a very good job by making all these different approaches accessible in one volume.  This book also covers each topic in depth as well. Interested readers can always look at the exhaustive list of references for further reading. I have seen a variety of people use this book: from professors who have been in the fields for many years, to my friends in humanities who are just curious to know what AI really is. I highly recommend this book to anyone interested in AI.

Author ID	ANS4BPTEFW5VU
Useful Votes	5/5
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.702702702702703	0.175675675675676	0.0810810810810811	0.0405405405405405
Re: Survey type of book, shallow but good for reference
I think the book is good overall, it could be more focused in some places and have better examples for the students.  My major point with writing this review though is to counter false claim from the reviewer who wrote the "Survey type of book, shallow but good for reference", the book does cover Simulated Annealing, see page 116 in the International Edition for instance.

Book ID	Title	Number of Reviews
020139829X	Modern Information Retrieval	7

Author ID	A2E3F04ZK7FG66
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.967244701348748	0.00770712909441233	0.0115606936416185	0.0134874759152216
Excellent as a textbook and a practical guide
I used this book as a textbook in a course on information storage and retrieval that I took a few years back, and it is still my favorite book on the subject. It explains the concepts clearly yet has all of the necessary mathematical and algorithmic details needed to work with the subject matter.  Chapter one just acts as a guide to the rest of the book. The book is basically divided into four parts: text IR, human-computer interfacing for IR, multimedia IR, and applications of IR. The part on text IR is best for beginners trying to learn the overall subject of IR, and consists of chapters 2 through 9. Chapter 2 is a long and important chapter that introduces fundamental concepts in IR and lays foundations for later chapters. Models for "ranking" documents based on queries are presented, including the boolean, vector, probabilistic, and fuzzy models. Chapter 3 is far less technical than chapter 2 and focuses on evaluation of IR models. Chapter 4 is an introduction to query languages, which are necessary for the elegant presentation of complex queries. Chapter 5 deals with query operations, which is the transformation of queries from simple keywords into weighted sets of terms and also includes user feedback. As in previous chapters, there is quite a bit of mathematics involved. Chapter 6 is devoted to text languages such as HTML and SGML since the user might refer to the structure of a document in his/her query, and that structure must be defined somewhere. Chapter 7 is about operations on documents themselves for the purpose of simplifying them for quick search. Thus, it is important as a time saver to eliminate common words such as "the" and also to reduce words to their grammatical roots. The potentially large size of document collections requires special indexing techniques for efficient retrieval. This is the subject of Chapter 8. Query processing can be further accelerated by using the parallel and distributed IR techniques discussed in Chapter 9, which concludes the book's discussion of text IR. Chapter 10 is a stand-alone chapter on HCI for IR that discusses the design of user interfaces that assist the user in forming a query and current approaches for visualization of large data sets. Multimedia IR is discussed in chapters 11 and 12. Models and query languages for office and medical information systems are discussed in Chapter 11. Efficient indexing and searching of multimedia objects is discussed in Chapter 12.  The final three chapters of the book are about the applications of IR. There is a chapter each about searching the web, bibliographic systems, and digital libraries.  The chapter on text languages is starting to show its age, as are the chapters on IR applications at the end of the book. The chapters on algorithms, and particularly the algorithmic portions of the chapters on text IR cause this book to remain a worthwhile read. There is quite a bit of mathematics used in this book, and probability theory in particular. Thus, the reader should already be familiar with probability theory and the basics of pattern recognition to get the most from this book.

Author ID	A5RM7OJLDJPDL
Useful Votes	5/7
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.938931297709924	0.0305343511450382	0.0114503816793893	0.0190839694656489
Stellar presentation of complex material
A fantastic, in depth, survey of all the issues surrounding IR, from algorithms to presentation of IR results. With one clear authorial voice, the authors present all the things you hope a survey book will- a structured, coherent and complete framework onto which you can append future learning; what common practice within commercial industry really is; a quantitative analysis of the relative effectiveness of each algorithm, including the methodolgy used to arrive at results;  an in-depth and clear explanation of all major algorithms.   They also give fair warning when they are only covering the outline of subject matter (which is rare), and they give extensive footnotes for anyone who needs to go deeper. The writing is always clear; the auithors never engage in the type of handwaving that other authors use to get past material you have the impression they themselves don't fully grasp.   If you need to implement search for a database and don't know  where to start or what might be involved, this is the book for you. If you need to implement the GUI for search results and are wondering what the state of the art is and what issues are involved, then this is the book for you. If you need a well-structured framework to help you understand  how internet search engines work, then this is the book for you. If you want to press the research forward on any of these topics and you are not already fluent in the literature, then this is the book for you.

Author ID	A16O2OKNK83TH5
Useful Votes	2/3
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.882352941176471	0.0588235294117647	0.0336134453781513	0.0252100840336134
Excellent research source
This is an excellent book for those interested in getting an overview of IR.  The book summarizes all the important milestones of IR up to 1999 (There are 852 references in the bibliography!).  The writing is concise yet eloquent. The authors try to cover as much ground as possible, providing a gold-mine of information comparing the pros and cons of the various types of implementation. However, I believe that due to the breadth of the techniques covered, some of the explanations for the algorithms were rather brief and not very illuminating.  But no worries, there are ample references to point you back to the writings of the orignal authors so you can get right back on track.

Author ID	A63U6KV4IRJEC
Useful Votes	1/3
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.913533834586466	0.0263157894736842	0.0225563909774436	0.037593984962406
Great textbook for computer science undergraduate and graduate courses and reference for IR practitioners
Modern Information Retrieval is a textbook for computer science undergraduate and graduate courses and a reference book for IR practitioners.  The book structure consists of a Preface, Acknowledgements, Biographies, fifteen chapters, Appendix, Glossary, References and Index. The first part of the book is authored or co-authored and addresses query and text operations, retrieval and indexing. The second part consists of special topics authored by leading researchers in their fields. This part focuses on architecture, multimedia IR, bibliographical systems and digital libraries.  The Glossary section of this book consists of 18 pages and defines important technical terms used in IR. The References section consists of 45 pages of significant IR work. The Index section consists of 13 pages, which enhances the book usability. Each chapter ends with a Trends and Research Issues and a Bibliographic Discussion section.   The best features of the book are its cohesive presentation and organization. The use of a common nomenclature and notation helps students and readers to assimilate key concepts and with "connecting the dots" across chapters. The text is reinforced by a mirrored Web site with several resources, errata page and teaching material. In Chapter 1, the authors even "go the extra mile" with teachers and suggest how chapters could be used with different undergraduate and graduate courses. All this makes the book a great educational resource for students and teachers.  This book is recommended for computer science courses at the undergraduate and graduate level. It is also recommended for technical libraries and as a primary reference for IR practitioners.

Author ID	A2ZTF2SHCJ4LLC
Useful Votes	0/1
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.756756756756757	0.135135135135135	0.0810810810810811	0.027027027027027
Ok for basics
This book covers most of the basics but is far from being up to date in technology. The student would be better off looking at the TREC website and reading papers submitted by participants.

Author ID	A1WNHZCEXWDVX4
Useful Votes	2/5
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.858585858585859	0.0808080808080808	0.0202020202020202	0.0404040404040404
Can be used in both for study and for a real world.
This book give you a very usable way in Information Retrieval. Before I read this book, my knowledge in IR was almost zero. But after I finished, I can do an IR project in my grad program. This book also give you a modern concept in IR that you can apply in a real-use. But it requires some knowledge in Computer Science way. This book suits IT professionals, Computer Scientists, and students in both grad and undergrad. I have spent several weeks to read this book.

Author ID	ATVUW9VV2A9LU
Useful Votes	9/13
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.72972972972973	0.108108108108108	0.0810810810810811	0.0810810810810811
Good introduction for computer scientists
Includes a nice overview of different Information Retrieval techiques. The think I liked most is the uniformity of notation throughout the whole book, that let you compare different approaches withouth getting lost in myriads of mathematical symbols defined in different ways by different authors. The authors also suggest you the most efficient and effective techniques, so that you can use this information to avoid implementing naive and inefficient solutions.

Book ID	Title	Number of Reviews
0471117099	Applied Cryptography: Protocols, Algorithms, and Source Code in C	40

Author ID	A16AZDVXP4U23G
Useful Votes	4/4
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.888198757763975	0.0496894409937888	0.0248447204968944	0.0372670807453416
Lives Up To It's Name
I will have to agree with some of the other reviewers that this book finesses a bit on number theory and some of the other mathematical fundamentals of cryptography. I am not dissapointed by this, however. After all the title of the book is "Applied Cryptography." Schneier gives the reader a lot for his/her money. The books is well written and an easy (considering the subject matter) and interesting read as well. "Applied Cryptography" covers a lot of territory - you get the basics of cryptographic theory, detailed treatment of many of the most commonly implemented cryptographic algorithms and protocols (including their potential weaknesses), and lots of source code. If you want to know the sordid details about number theory or pseudo random numbers, there are plenty of books in print that go into great (and often laborious) detail on these subjects. The title says it all -- this is an excellent book on applied cryptography!

Author ID	A1OB5L3WMHJAD9
Useful Votes	90/96
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.951648351648352	0.0197802197802198	0.0175824175824176	0.010989010989011
A bit out of date, but highly worth reading
Bruce Schneier's APPLIED CRYPTOGRAPHY is an excellent book for anyone interested in cryptology from an amateur level to actually being involved in the development of new encryption mechanisms. Schneier's book begins with a simple discussion of what is cryptography, and then he proceeds through the history of various encryption algorithms and their functioning. The last portion of the book contains C code for several public-domain encryption algorithms. A caveat: this is not a textbook of cryptography in the sense that it teaches everything necessary to understand the mathematical basis of the science. Schneier does not discuss number theory because he expects those who use the relevant chapters of the book will already have training in higher maths. Nonetheless, the book does contain a wealth of information even for the layman. One helpful part of Schneier's book is his opinion of which encryption algorithms are already broken by the National Security Agency, thus letting the reader know which encryption programs to avoid. There will always be people who encrypt to 40-bit DES even though it is flimsy and nearly instantly breakable, but the readers of APPLIED CRYPTOGRAPHY can greatly improve the confidentiality of their messages and data with this book. Discussion of public-key web-of-trust is essential reading for anyone confused by how public-key signatures work. APPLIED CRYPTOGRAPHY was published in 1995 and some parts are already out of date. It is ironic that he hardly mentions PGP, when PGP went on to become the most renowned military-strength encryption program available to the public, although it is being superseded by GnuPG. Another anachronism is Schneier's assurance that quantum computing is decades away. In the years since publication of APPLIED CRYPTOGRAPHY we have seen some strides in quantum computer, even the creation of a quantum computer that can factor the number 15. While this publicly known quantum computer is not at all anything to get excited about, it is certain that more powerful quantum computers are in development and classified by NSA. Because a quantum computer can break virtually any traditional cipher, hiding the message (steganography) is becoming more important than ever. In the era of Schneier's book steganography was unnecessary because ciphertext could withstand brute-force attacks, but with advances in computing power steganography is becoming vital to secure communications. It would be nice to see the book updated with this topic, because cryptography and steganography can no longer be regarded as two distinct fields. All in all, in spite of its age, APPLIED CRYPTOGRAPHY is recommended to anyone interested in cryptography. It ranks among the essential books on the field, although an updated version is certainly hoped for.

Author ID	A1W9KQRCZ9ORHB
Useful Votes	4/5
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.907407407407407	0.0277777777777778	0.0277777777777778	0.037037037037037
Excellent Text - Not Too Mathematical
This book provides excellent coverage of the mayor cryptography algorithms.  It is a must have (for academic study or implementation), if only for the completeness of coverage and the comprehensive references.  The C code provided is adequate, but reasonable programming skills are assumed.  The book is not overly mathematical (which many of the other cryptography texts are - this is great for me, as I am more intereseted in practice).  There is also good information on assessing / comparing the merits of different algorithms.  Great for the practictioner or student taking a first course (it's still not bedtime reading).  Mathematicians will look for more ......

Author ID	A3IDK14T1LZAGN
Useful Votes	3/3
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.890322580645161	0.0387096774193548	0.0451612903225806	0.0258064516129032
Good information to get you started; comes with C source too
This is one of the few cryptograhpy book that can be fun to read.  It is also a catalogue containing quite a number of algorithms along with readable explanations that make it easy to understand.  However, if the reader doesn't understand what an XOR operation is, this book can be quite hard to finish.  No in depth maths here. I bought this book in 99 and found it useful, because it helped me gain insight, into the practical application of crytograhpy in my programming endevours.  Glancing through the C source code at the end of the book started me thinking on the code implementation in my efforts. A stimulating read.  Fours stars because I was hoping for more goodies.  Beware!!! Some people around you might think that this book is written in a language resembling english, all about Alice, Bob, Carol, Mallory and company.

Author ID	AQ9GVQAH3ZU0
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.964071856287425	0.00598802395209581	0.00598802395209581	0.0239520958083832
Very easy to understand, and complete
When I read this just after it came out, it was arguably the best, most comprehensive book on the subject. It may still be, but I haven't surveyed the field in the last year. But either way, this book is very easy to read, and makes some fairly complicated stuff easy to understand. This is a subject area that makes it real easy to be dry, boring, and all of that, but this book is none of those things. Applied Cryptography is fun to read, and makes the subject interesting. About 1/2 of the book is stuff anyone interested in the subject, or anyone that needs to implement some form of encryption or digital signatures will find very useful. The other half is the underlying algorithms and mathematics behind it, which to be honest I didn't read and didn't need to know to do my job. But this is a great book, and has both sides of the story.

Author ID	AU8DH6AOA1YOJ
Useful Votes	4/6
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.76	0.15	0.05	0.04
THE Cryptography book
Most books that focus on cryptography tend to be academic and very dry reading.  Not this one; Schneier has crafted an easy to read book that covers cryptographic techniques and issues. The book is divided into four major sections: Cryptographic Protocols, Cryptographic Techniques, Cryptographic Algorithms, and a section called "The Real World" that discusses examples of how cryptographic protocols and algorithms are actually used.  It also discusses political issues. The book contains the source code (in printed form) to many of the algorithms discussed in the book. The algorithms include: DES, IDEA, Blowfish, RC5, SEAL and others.

Author ID	AUTBHG6070SL4
Useful Votes	11/12
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.939947780678851	0.0287206266318538	0.02088772845953	0.010443864229765
Essential reference for any programmer
Over the long term, this is the applied math book that I come back to most often.  The first quarter of the book may come as a surprise. It's not about encryption, it's about secure protocols. This is great stuff. It includes secure key exchange, where you and I can agree on an encryption key in a public conversation, but none of the other listeners know what we agreed on. It includes zero-knowledge proofs, ways of establishing authorization without releasing your identity. It includes lots more, as well. The next brief section discusses different modes for using encryption algorithms, key management, and other logistics.  The third section is what you might have expected: detailed descriptions of many encryption schemes, taking up at least half the book. That includes public key schemes, private key codes, secure hashing algorithms, and all the other details needed for implementing the algorithms. One of the most useful subsections here is a set of pseudorandom number generators. It's not exhaustive, by any means - it omits the Mersenne Twister, for example. Still, it gives a fair set of algorithms, some of which are "cryptographically secure". That means the generator's output strongly resists attempts to find regularities, just the way a truly random sequence would. The last two chapters give a brief summary of the practice, legalities, and even culture around cryptography. This won't make you into a crypto professional. Despite its  600+ pages, it barely introduces the world of crypto and certainly doesn't release anything from the "closed" world of government agencies. It will, however, give you useful algorithms, a basic background, and an appreciation of just what real crypto is about. That last may be the most important part. Too many people think inventing a good code is like making love: anyone can do it, and they instinctively do it better than most people. Wrong! Real crypto is not for dabblers, and this book gives some sense of what is involved. The first edition of "Applied Cryptography" was a landmark text, but the second edition is even better. It's so much better that, if you just have the first edition, you really should upgrade to the second, and I've never said that about any other book.

Author ID	A2J7VN7KKSX0B5
Useful Votes	33/35
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.92258064516129	0.0193548387096774	0.032258064516129	0.0258064516129032
The best introduction to cryptography I have read
If you are already a cryppie or other security professional, this book will not add much to your knowledge. But if you are a programmer or other systems person with a desire to familiarize yourself with the field, I  can't recommend this book highly enough. A reasonably solid mathematical  background is required to fully understand the algorithms, but the book is  structured in such a way that you can skip most of the heavily technical  stuff and still get a lot out of the read. Because this is essentially an  introductory text, generality is the name of the game. Pretty much  everything is covered, but to a low, or medium at best, degree of depth.  (Only DES is covered thoroughly.) However, the reference list in the back  is huge, and you can use it to easily track down any more detailed  information that you're after.

Author ID	A2RNMSNX5Y5J3T
Useful Votes	0/0
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.810526315789474	0.0421052631578947	0.115789473684211	0.0315789473684211
Prepare to drink from the firehose
This book is really incredible.  When it was first published in the mid-90's, there was almost no material available on the subject of cryptography.  Now, ten years later, there are dozens, if not hundreds, of books riding on Schneier's coattails - but almost none have anything new or useful to say.  Impeccably researched (with 1,653 references!) and unarguably complete, Schneier's expertise in theoretical mathematics, experience as a practitioner, and razor-sharp lucidity combine to make this the only book you'll ever need on the subject of cryptography.

Author ID	A3ESBKKC50IZVX
Useful Votes	16/17
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.894117647058824	0.0470588235294118	0.0470588235294118	0.0117647058823529
This book is a labor of love
If you want to buy a book which is a wonderful introduction to cryptography, then you have just found it.  Many books suffer from excessive bloat where the author tries to be everything to everybody.  This book is not one of them. It's lean and clean and it'll turn you into a mean cryptographic machine.  Some reviewrs seem to berate the author for: a) losing his job b) trying to make a buck by writing books c) not writing a mathematical tome Well, I have some news for you: a) Anyone can get laid off from any job at any time - period. b) All authors write books for money. c) The author clearly states at the beginning of the book under the heading, How to read this book - 'I wrote Applied Cryptography to be both a lively introduction to the field of cryptography and a comprehensive reference...This book is not intended to be a mathematical text.'  Need I say more.

Author ID	A1V3I81BPMQ7G6
Useful Votes	2/4
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.851851851851852	0.0493827160493827	0.0246913580246914	0.0740740740740741
Excellent!
The foundations outlined in the first three parts of the book are strengthened with a practical language and I sum up. I received the book few days ago and it impressed me the form in which arrives to the reader, in the personal thing the knowledge of the book they will help me to strengthen my knowledge in cryptography. Maybe with images of digital certificates the book would have bigger back, although for the year of edition it is understandable.

Author ID	A21TP65G1SCGBT
Useful Votes	11/13
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.777777777777778	0.126984126984127	0.0634920634920635	0.0317460317460317
The Britannica of Cryptography
Schneier's book is a surprisingly down-to-earth encyclopedia of the data scrambling technology which secures electronic communication worldwide, and which the US Government has tried for years to keep in the bag.  Understanding cryptography is a must for anyone interested in the  technology behind privacy on-line, and Schneier's book is the best source  there is.

Author ID	A250BI36M1IR26
Useful Votes	1/5
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.782608695652174	0.0869565217391304	0.0652173913043478	0.0652173913043478
the classic text.
You know that Applied Cryptography: Protocols, Algorithms, and Source Code in C is a classic, since anyone who write a book or article about crypto quotes and plagiarizes from Schneier. But this is the text if you want to be a crypto guru.

Author ID	A3C4UKEYNLUP4X
Useful Votes	3/4
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.854368932038835	0.0679611650485437	0.0679611650485437	0.00970873786407767
I never though Cryptography could be so easy to understand
Mr. Schneier does a beautiful job of making the most complex topics of cryptography easy to understand. His examples and explanations brilliantly explain the topics. This book is actually a very interesting approach to something that at first glance would appear dull and dry. There are plenty of charts and diagrams, as well as the source code for popular encryption algorithms.  These visuals, and the accompanying text have really aided me in understanding cryptography. I would recommend this book to anyone wanting to have a better understanding of cryptography.  Great job Mr. Schneier.

Author ID	A7S83KW2BH20D
Useful Votes	3/3
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.861386138613861	0.0495049504950495	0.0495049504950495	0.0396039603960396
The Bible of the Crypto-world
For anyone working or studying the crypto-world (IT Security, Cryptographer, Cryptologists, PKI/PGP/SecureID Technologists, etc.) this is a must read.  For the fascinating world of Cryptography (the practical application of Cryptology) this is an essential textbook that any graduate course of digital security and cryptology should include.  It is inteded as a reference book as well as a practical book to have handy for the working professional.  It's no wonder the NSA had asked the author not to publish this book.  It leaves the Crypto-world naked to the average viewer/reader!

Author ID	AX0ZB13HQ8RTI
Useful Votes	1/2
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.873684210526316	0.0526315789473684	0.0526315789473684	0.0210526315789474
Excellent.
If there's one book I keep referring to again and again, it's this one. It is very well written and a joy to read. Schneier has given us an excellent blend of humour, crypto and great writing. It's not very mathematical (there are other books like the handbook of applied crypto by Menezes et al. for that) and gets straight to the guts of the algorithms, and it's been very helpful when implementing algorithms. Though it's slightly old, I'd recommend this book to anyone starting out on cryptography.

Author ID	A26AZ371EZ8KEF
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.81	0.1	0.03	0.06
a great book for Avid Crypto fans
This is not a simplified overview, be warned.  Simon Singhs The Code Book is for armchair readers. This is a comprehensive and detailed examination of how real world cryptography is done.  It's an excellent book for programmers seeking to implement security into their programs. It is also an eye-opening look at how even the cleverest security algorithms can be compromised. The emphasis is on illuminating just how difficult it can be to protect communications.  The devil is in the details and Schneier gives you the details but in an understandable way.

Author ID	A1TUQSIACVKHTB
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.859649122807018	0.140350877192982	0	0
A piece of excellence
This book is an bsolute must read for anyone dealing with security. It covers almost everything in the field, and gives a deep insight, plus the correct way to think. If you need details on a specific topic, you'll find  a way to that too, the book has a 1600+ list of references.

Author ID	A2C8DI0O66F83P
Useful Votes	3/4
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.83495145631068	0.0970873786407767	0.0388349514563107	0.029126213592233
Good overview with practical use in mind
For a subject like this....one would expect a lot of mathematics involved but this is not the case..... First of all this requires min. knowledge of common algebra ( I believe this is good).... secondly it does not go into full detail. Well, the book covers all the cryptographic algos/ protocols possible......in that sense its good.........Secondly.....the language and the explanation is very easy to follow..... I gave this book 4 stars because I feel it does not cover the mathematical aspect of cryp. in right amount of  depth and essence. Definately a must read....

Author ID	A3E1YETZGGXZ5I
Useful Votes	11/12
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.866359447004608	0.0691244239631336	0.0414746543778802	0.0230414746543779
Comprehensive and gentle
Depending on what level of rigor one wishes, this is either an excellent book or an adequate book. First, the negatives -- this book is several years old, and the cryptography community moves as rapidly as most other computer industries. So, it feels dated, and completely misses out on the AES candidates and the AES winner, Rijndael. The positives -- this book is comprehensive. It covers practically all topics of modern cryptography in some detail, and -- the real gem of the book -- contains a bibliography with over 1500 entries. This book also provides for a wonderfully gentle introduction to cryptography; it doesn't assume the reader already knows the subject. Where this book is likely to falter is in the rigorousness category -- this book was not intended for a mathematical or theoretical work. This book was intended to convey the ideas of cryptography to people who would be asked to implement cryptographic protocols or schemes designed by others. As such, I feel it does a good job. Those that are more experienced may find the book useful for its comprehensive bibliography: check the table of contents for subjects, read the passages, and track down the references. Very easy, and very fast. (... has links to many of the references, though without the topical index afforded by the text.)

Author ID	A3D1JDPU5IX0MY
Useful Votes	3/3
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.887640449438202	0.0337078651685393	0.0449438202247191	0.0337078651685393
Explains everything
This book has really shed a lot of light on cryptography for me. I honestly can't put it down--I wish I had paid more attention in my statistics classes so I could be able to apply some of the stuff the author talks about better. I am about half way through the book, and I haven't gotten to the point where it's more of a chore than a pleasure to read it (something I can't about my other technical books). Get it!

Author ID	AFMV4P132BQXN
Useful Votes	4/8
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.728260869565217	0.0869565217391304	0.108695652173913	0.0760869565217391
Essential Crypto Overview
Clearly a monumental work.  Easy reading style, thorough treatment of protocols and ciphers of all styles and purposes...if you read this and don't pick up something useful then I want to hire you! Copious and  meticulous references.  Consistent style throughout is a big plus.  Dry wit  (Alice and Bob find a book on Artificial Inteligence lying discarded and  unused on the road...)makes for fun reading. The only thing I would wish  for is a clearer delineation between protocols and ciphers in the public  domain vs. patented.

Author ID	A159SAIGEYQ77M
Useful Votes	15/15
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.875816993464052	0.0784313725490196	0.0130718954248366	0.0326797385620915
One third theory, one third practice, one third politics
An excellent, informative and entertaining introduction to this  field. The first third covers, in reasonably technical detail, the theory  and mathematical implementation of cryptosystems.  Much of this isn't  necessary for the casual reader, but its the clearest explanation of this  arcane stuff you're going to find anywhere. The second third covers  real-world applications of cryptosystems - electronic voting, cyber-money,  key management and a thousand other inventive uses.  Sufficiently  non-technical for even a salesman to understand. The last third covers  the politics of modern encryption, and is more intriguing, exciting and  informative than any Tom Clancy novel.  This last part alone is worth the  price of the book. Schneier's writing style is informal, informative and  often humourous.  It's hard to believe anyone can write about such a  (potentially) dry subject and yet include some genuine jokes! Buy this  book.

Author ID	A1M0HEHGIVUVTB
Useful Votes	1/1
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.883928571428571	0.0446428571428571	0.0446428571428571	0.0267857142857143
Great reference book, OK read
Although this is still considered the bible of cryptography, I read it like a novel and found it only ok, but it serves as an invaluable reference. I find that quoting pages out of this book stops people arguing with me when I talk about Crypto in my job. Key thing about this book is that it describes many algorithms that you have never heard of and never need to. Having an understanding of what is mainstream and what are the basics will help you. At the end of the day if you are serious about Cryptography then you really need to get a copy of this.

Author ID	A25CNV8E2G8JDH
Useful Votes	10/10
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.904761904761905	0.025974025974026	0.038961038961039	0.0303030303030303
Great fun
This book is readable introduction to real cryptography. It covers a wide range of topics (block and stream cyphers and hashing and random number generation algorithms) in enough depth, and with sufficient theoretical foundation, to give the reader an honest overview of the field. The last section contains code for many of the algorithms and electronic versions are available through Schneier's web site. Throughout the book Schneier manages to include current references to the inevitable political and legal issues. These references are discussed in an engaging manner and without letting them hog the spotlight. On the other hand, in a fast-moving field like cryptography, they are beginning to get a bit long in the tooth. The book was originally published in 1996 and many of the remarks are noticeably dated (though, perhaps, historically interesting). Printings before the fifth are also riddled with errors. Fortunately, good errata are available at Schneier's website. They are essential: if you find yourself thinking "That can't be right", it probably isn't. Read this book first. Without some college level mathematics you may have to skim some of the chapters; still, you can probably curl up on your couch and read it cover to cover. If, afterwards, you get hooked into following up with Stinson's "Cryptograpy", or Menezes "Handbook of Applied Cryptography", don't say I didn't warn you!

Author ID	A1B6BPFLS3IYDR
Useful Votes	6/20
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.854368932038835	0.0679611650485437	0.0485436893203883	0.029126213592233
Runaway text
I've never seen so many pages devoted to pure text.  Man oh man, is there a lot of talk--yak yak yak.  All technical issues are detoured, inviting the reader to check out the references listed at the end of the book (all I have to buy is 1,643 references--gee, thanks).  I find it disheartening that a 700 page book on cryptography doesn't give out a lick of information on the actual subject.  If you like a bunch of talk and some hand waving explanations, then this book is definitely for you.  Engineers and computer programmers may not be satisfied.

Author ID	A2EG5DPASK8J6Y
Useful Votes	0/1
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.789473684210526	0.184210526315789	0	0.0263157894736842
Applied Cryptography
As a computer science student this book is the best Computer science book I've ever read. It's acomprehensive encyclopedia of all major algorithms. This book teaches you how safe the alg. really are. Recommended !

Author ID	A3CJBKKG7IA3WI
Useful Votes	0/3
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.833333333333333	0.0833333333333333	0.0833333333333333	0
ask question
is there any twofish implementation in this books. I want to look for the implementation and i haven't got it yet

Author ID	A54KS3B7BREEY
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.916030534351145	0.0229007633587786	0.0458015267175573	0.0152671755725191
Good, but a little bit out-of-date
This book is a very strong introduction to computer-based cryptography, especially geared towards programmers who aren't solely interested in the mathematical theory behind cryptography, and refers the reader to a number of other good books on topics that it doesn't cover. My only complaint is that some of the material in it is a bit dated (notably the entire section on the Clipper chip). If a fourth edition came out today, I think it would be worthwile to buy. However, for someone looking to learn about cryptology in general, this is not the book to buy. This focuses only on the needs of engineers who want/need to learn about cryptology, without forcing them to learn all of the theory.

Author ID	A1M09KHZ8WR5PY
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.777777777777778	0.111111111111111	0.0888888888888889	0.0222222222222222
Very well done
Excellent introduction and explanation for both novice and professional cryptographers.  Easy read with very detailed explanation.  I Highly Recommend both this and Handbook of Applied Cryptography (for some of the mathematical algorithms) if you are planning on implementing your own cryptographic library.

Author ID	A28TNHQ8XJKE20
Useful Votes	0/2
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.6	0.25	0.05	0.1
Great reading for someone who is curious about security.
Security bible. Contains indepth technical details of security protocols and concepts.

Author ID	A89JK6XOBUW1N
Useful Votes	3/29
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.0535714285714286	0.660714285714286	0.160714285714286	0.125
Buku ni best lah dalam kajian security!
Kawan-kawan sekalian yang suka hack sini sana ke, buku ni memang bolen mengeraskan lu punya pandangan.  Kalau matematik engkau baik jugak, buku ni boleh jadi benda rujukan anda kalau lu nak cipta algorithma kripto.  Okek  leh, tak mau cakap banyak sangat.  Buku ni memang baik, pegi beli sekarang!

Author ID	A28CMGZ7QYZJ8M
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.930635838150289	0.0346820809248555	0.0289017341040462	0.00578034682080925
A must-have book for understanding Cryptography.
This book has really shed a lot of light on cryptography for me. I honestly can't put it down--I wish I had paid more attention in my statistics classes so I could be able to apply some of the stuff the author talks about better. I am about half way through the book, and I haven't gotten to the point where it's more of a chore than a pleasure to read it (something I can't about my other technical books). Glancing through the C source code at the end of the book started me thinking on the code implementation in my efforts - although I used Java althrough my life. I am not much comfortable with the C code because I was hoping for more goodie examples. If you want some practical guidance..you may little bit uncomforatble as well. At the end of the day if you are serious about Cryptography then you really need to get a copy of this.

Author ID	A1V6ZKAKMJB0VM
Useful Votes	2/3
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.851851851851852	0.0740740740740741	0.037037037037037	0.037037037037037
Definite Book for Professionals and also Newbies
Bruce Scheier clear writing makes understandable the hard issues very well. If you want to know that what cryptography has been used and also can be used for real life. Like digital money, authentication systems , secret sharing etc...  This is not a theoric math book it explains the spirit of cryptography but and its usage.After reading it I recommend that get a mathematical oriented cryptography book like "Introduction to Cryptography with Coding Theory "

Author ID	A23WPYFLSJ44DF
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.862068965517241	0.0689655172413793	0.0689655172413793	0
Applied Crypto was just what I needed..
AP was exactly what I needed for the practical background necessary to implement the cryptosystems used in a number of products we've built.  I found the book to be excellent, thorough, and well written - highly recommended (and hardly "shelf ware" as some of the other venom-filled reviewers have claimed).

Author ID	A34XD82OT4JDI2
Useful Votes	1/12
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.9	0.0833333333333333	0.0166666666666667	0
Only good for beginner
If you have no knowledge on cryptography and want to get some information, this book is suit for you. If you are doing some actual work, it's not a good one. The book does not cover sufficient mathematic knowledge, and contains errors. E.g., the proof of RSA decryption is absolately wrong! Can't beleive!

Author ID	A2OLDUDK3QBLPC
Useful Votes	0/13
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.65	0.25	0.1	0
Text Book for School
The book was in excellent condition.  The book came within the alloted time period.  No complaints!

Author ID	A37Y26TT5U1X3X
Useful Votes	1/1
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.863157894736842	0.0526315789473684	0.0842105263157895	0
THE source for information on cryptography.
If you are interested in understanding cryptography, this book should be at your side. Mr. Schneier has produced a book that speaks to beginners as well as experts. This volume includes source code for popular algorithms and is highly recommended for those who wish to be informed on the most widely used algorithms. Only gets 4 stars because much recent information is not in the book. Hopefully the author is working on an update that will include the latest advances.(I would have given it 4.5 stars if it was possible)

Author ID	A2323C6U04JTQL
Useful Votes	3/5
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.888888888888889	0.0617283950617284	0.0123456790123457	0.037037037037037
Great Book
Of course, one of the best book i've ever read about this field.  It's to be underlined the division of the book: in the first part you can find a very interesting summarize about cryptography and its algorithms.  In the second part there is a little introduction on maths field (it's better to have a base on this field to understand this part very well),  and then there are some chapters dedicated to implementations.. Well done

Author ID	A2ZRT0SERJ3MIB
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.858333333333333	0.0666666666666667	0.00833333333333333	0.0666666666666667
The all-time best crypto reference ever
Sometimes you must choose either clarity (for the newbies) or in-depth obscure explanations (for the experts). Bruce Schneier has done the great job of joining the two aspects together. He explains things clearly and even playfully. He enjoys teaching, he enjoys cryptography and you can tell it from his style. But he does not stop there: he explains things in depth whenever possible and useful, and tries to explain how a cryptosystem is evaluated, how to choose between algorithms, and how to correctly implement cryptography in your works. This book is an absolute must have for everyone interested in cryptography, and can substitute very well even an academic course on the matter.

Book ID	Title	Number of Reviews
0072465638	Database Management Systems	13

Author ID	A1VNTTN7TN7JAE
Useful Votes	1/2
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.83448275862069	0.096551724137931	0.0206896551724138	0.0482758620689655
Great Book
I just stumbled across this on Amazon. Thinking back to my undergrad days - I used a earlier edition (1998-9) of this book. It was a ABSOLUTELY great book. Even when I took a graduate level class in Database systems, I saw myself flipping back to this book very often.  I am definitely going to buy this edition, as I lost my old copy. It will serve as a good reference book even as you prepare for interviews or actually use databases in your job. Key definitions and concepts are well explained. I recommend marking them, so that it is easy to refer back as you see yourself getting rusty with them, over the years. Absolutely the highest recommended database book!  The only gotcha on this book is the price. I wish it was 20-30 bucks cheaper :(.. regardless it is well worth the high sticker price.

Author ID	A1VUJY1R61IT0F
Useful Votes	0/1
Rating	3
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.933333333333333	0.0444444444444444	0.0222222222222222	0
Not a great textbook, not a terrible textbook
The textbook comes complete with great online supplemental information, but that doesn't make it a great textbook.  I've found that the material is often not explained thoroughly enough.  Also, some of the exercises expect you to know about concepts that are not covered adequately in the text (for example, there are questions on 2NF, and there is no more than a couple sentences on the subject).  The material as a whole is not explained very clearly, and the chapters on the lower-level subject material (systems) are not quite up to par. I suppose the reason I was a bit disappointed is because this is such an important subject, and I was hoping for a real keeper.  This book is decent, but definitely not great.

Author ID	A19KRV4K1MNPOW
Useful Votes	0/0
Rating	1
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.78125	0.140625	0.0625	0.015625
Lousy Book, Extremely Difficult to Read
This book is very frustrating to read. The author has a problem explaining the concepts.  The examples illustrated, some are good, but some are really ambiguous. Examples lack of practical sense and explained in a way that he himself can understand.  Really had a hard time reading/studying this book. Definitely won't keep it on my bookshelf.

Author ID	A1FVLL9PKNRSYC
Useful Votes	5/5
Rating	1
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.896	0.024	0.056	0.024
Worst database book I've ever purchased
I am a Database Admin who was required to purchase this book as part of my Master's program.  I can honestly say that I'll never refer this book again.  This book is way too heavy on theory and does a poor job of providing enough practical examples to support the material discussed. Any examples provided do a lousy job of illustrating what's discussed.  It's unfortunate that schools choose to use books such as these but I can only assume politics are involved. This book is over $100 brand new.... an expensive paperweight.  There are better and CHEAPER books on database internals and theory.  If you're forced to buy this for school, buy it used!

Author ID	A1LX8D386G94IC
Useful Votes	6/6
Rating	1
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.869718309859155	0.0492957746478873	0.0457746478873239	0.0352112676056338
A confusing and time-wasting book
To database developers, administrators or curious students, with love: It is very unfortunate that destiny had me suffer the tremendous pain and frustration in reading the 3rd edition of "Database Management Systems", by Ramakrishnan and Gehrke, to learn the fundamentals of DBMS, for the contents of the book lack preciseness and clarity, thus, leading to a lot of confusion and ambiguity in the mind of the reader, who is learning databases for the first time (and is presumably an experienced programmer). Authors of the book have badly failed in properly covering the topics based on clear and formal definitions of fundamental database concepts. Many topics were not dealth with by the authors comprehensively and lack focus too. The book is full of hundreds of lines of explanation that require another expanation. It is true that this book is more like a puzzle for you to put together in order to make heads or tails of what the topic really is all about.  This book seems appealing, however, to the instructors, for the authors have provided them with supplementary material that mainly includes lecture slides, complete solutions to problems in the book, and some examination papers. In summary and conclusion, the 3rd edition of "Database Management Systems", by Ramakrishnan and Gehrke, sucks and is it not worth your time or money. This conclusion higly propabilistically holds for all previous editions of the book. A strongly recommended alternative is "Fundamentals of Database Systems" by Elmasri and Navathe. Oh, and by the way, those quotes (all of which I bothered to read) that the authors have selected to start each chapter of the book with are really silly, irrelevant and meaningless.

Author ID	A1H8RP00UFXJQS
Useful Votes	1/1
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.83695652173913	0.0760869565217391	0.0760869565217391	0.0108695652173913
Incomplete!
The authors have not finished writing this book, so you ought to reconsider purchasing it.  Throughout the book, it refers you to the website for the book, which purports to have scripts, files etc for students to use while doing the problems the book provides.  However, much of the supplimentary material is MISSING and though myself and other students have tried to contact the authors, we have received absolutely zero response.   Frustrating to say the least!  Do not buy this book until you can verify that it is in fact COMPLETE.

Author ID	A2ATBXO1OL7CF7
Useful Votes	2/5
Rating	1
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.785714285714286	0.0892857142857143	0.107142857142857	0.0178571428571429
Can't be worse
This is by far the worst textbook I've ever had. The language is ambiguous, uninteresting and full of typos. From time to time this book makes me doubt my ability of reading English. By the way I am a "straight A" student. I wish I didn't have to read it.

Author ID	APRJVS68VBCS0
Useful Votes	3/4
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.942222222222222	0.0355555555555556	0.0133333333333333	0.00888888888888889
Very Good Book
It's tough finding really good database books that provide a broad range of coverage of database related topics, including the internals of how (relational) database systems work.  This is one of the best database books (database theory, concepts, internals, and state-of-the-art database topics) that has come along in 20-25 years.  Please note that this is a university textbook.  You won't learn MS Access programming or Oracle database administration from this book;  if this is why you bought the book, you will probably be disappointed.  You will, however, learn a lot about database concepts and internals.  There are some small errors in the book, but that happens everywhere.  The examples are pretty easy to follow, and the sidebars about DB2, Oracle, SQL Server, etc. are really nice.  This is a great book to keep on your reference shelf, whether you are an academic, or have a career in industry.  We've been using this book at UBC for both our 3rd and 4th year database courses for several years, and have found it to be particularly good for teaching.  Overall, the students seem to be pretty satisfied with it.  We also use parts of the Garcia-Molina, Ullman, Widom text ("Database Systems: The Complete Book") for part of our 4th year course.  It, too, is a very good book.

Author ID	A166KID6IDI91E
Useful Votes	2/2
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.880597014925373	0.0398009950248756	0.0597014925373134	0.0199004975124378
Difficult to read, avoid it at all costs
I bought this book according to my course instructor recommendation.The text is very difficult to understand.I have to read the same sentence for several times and then go back to the according powerpoint slide to try to understand what is going on. Take chapter 2, introduction to database design, as an example.Most of the text is devoted to ER model.The example is very difficult to understand.Graphical explanation should be included, but not all examples are explained in such way. Many times, when going in depth to stuffs like class hierarchies and key constraints.Litte if not zero example is provided.Read this quote if you can understand: "In contrast to class hierarchies in programming languages such as c++ -- there is a constraint on queries over instances of these entity sets: A query that asks for all Employees entities must consider all Hourly_Emps and Contract_Emps entities as well." The authors seem to be very weak in english.They love to use rheoteric questions and followed by the very same answer, 'Intuitively, no!', to try to convoy their ideas. Obviously it is not very intuitive! Avoid this book please!

Author ID	A7I6T1CBANBQ6
Useful Votes	1/5
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.910569105691057	0.024390243902439	0.040650406504065	0.024390243902439
great textbook
In my opinion, it's one of the best books on the subject, and it is for a reason that this textbook is used in Berkeley's undergraduate EE/CS database CS186 course. I read reviews below from some of the straight 'A' students that the book is too complex and confusing. Others complain it doesn't cover common DBMS vendor implementations (Oracle, SQL). Again, this is a well-written book that thoroughly covers the theory behind every vendor's database design, and it's difficult to see why one would expect it to be an easy reading. If you like serious, unwatered-down textbook style reading that requires some thought on your part then this book is right for you.

Author ID	A1VAMO19FF5KKJ
Useful Votes	3/7
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.947761194029851	0.0223880597014925	0.00746268656716418	0.0223880597014925
I don't understand the purpose of this text
Frankly, I do not understand the purspose of this text. It's obvious that the book covers everything in DBMS, from the very basic like SQL to the very complicated and detailed like internal schema of DBMS. Everything is covered, but not comprehensively. I think the author tries to show you just a little bit of everything. If you have extra bucks and lot of spare time, go for it at your own risk.  In fact, I bought this book just because it is a required text for the semester. After buying it, I was extremely disappointed. I learned most of DBMS stuff (oracle, SQL, web programming) by searching online and on other books from shool library. But it is definitely not from this one.

Author ID	A2CN7YR643BHZI
Useful Votes	4/4
Rating	1
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.92	0.0222222222222222	0.0266666666666667	0.0311111111111111
This is a bad book for learning databases
I had to use the book in a graduate level course and it left me with a bad experience at all levels, from the structure and contents, through the questions/answers, to the typos.  For example, the authors included an "Applications Development" part that covers Java database access (Chapter 6) and Java-based Internet applications (Chapter 7). In 44 pages (including summary and exercises) you are whizzed through URI, HTML, XML, DTD, three tier architectures, servlets and JSPs! The text does not do justice to any of them, as they don't have the space to do so.  For a second example is the "Security and Authorization" chapter (21) which starts ok with grants, and discretionary access control but then spends a page muddling things with mandatory access control then veering off into encryption and digital signatures.  I have only used chapters 1-5, 7, 21, 25-27 so I cannot comment for the rest of the book, but I haven't kept it after the course finished (I do keep most of my course books).  Some exercises, most notably in the "Application Development" part require the setup and configuration of a servlet container and connection to a database - none of which is described in the book or in the companion website.  The book has plenty of typos and even logic mistakes in some of the problems.

Author ID	A32E2BR3QFZ91W
Useful Votes	2/2
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.895522388059702	0.0746268656716418	0.0149253731343284	0.0149253731343284
please get another book that is much cheaper and better
I feel like reading puzzle while reading this book. If this is a book for advanced user, why my professor use it in the database introduction course ?   a lot typo in the text and many exercise answers are incorrect. countless sentences in the book just hard to read. don't waste your time and $100 on this book!!

Book ID	Title	Number of Reviews
0201385902	An Introduction to Database Systems	19

Author ID	A1C37N7MT4E9ZR
Useful Votes	31/33
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.972602739726027	0.0136986301369863	0.0136986301369863	0
No longer recommended as an introductory text.
I read an earlier edition of the book back in the mid 90s. At the time, that was the first serious book on relational database theory I read. I thought the earlier edition was a great introduction to the topic. It was a tough "college textbook" read, but well worth it. I would no longer recommend the latest version as an introductory text. One gripe is Date's introduction of his own language "Tutorial-D" to explain and illustrate concepts. There is no one place in the book you can go to for a comprehensive description of Tutorial-D. Instead, snippets of it are peppered throughout the text. Another gripe: he can be long-winded and pedantic, and he uses phrases like "mutatis mutandi." I understand he is a man with a mission to be exacting and precise. But somehow, he seems to have overdone it in this edition. The latest edition has many new chapters on object-relational, temporal databases, logic databases, and decision support systems. These are very convenient overviews, as always, filtered through Date's unerring and zealous devotion to the underlying relational theory. I think if you already understand relational theory and you are a practitioner in the field, this is still a comprehensive "must have book." But if you are starting out, you will want a kinder-and-gentler introduction. The "love-it-or-hate-it" reviews seems to support this viewpoint. I rated it 4 stars because (1) it is a classic (2) it is comprehensive (3) it is a reference work that any serious practitioner will want and (4) it has extensive and well-annotated references at the end of each chapter. I withheld the 5th star for the gripes I mentioned above.

Author ID	A20FWRR68H1U5G
Useful Votes	4/4
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.93048128342246	0.0213903743315508	0.0267379679144385	0.0213903743315508
Passed on to me by my father...
I received the fourth edition from my father way back when I was in school.  Yes it is hard to read if you don't want to take the time to understand the mathematics and don't want to learn the theory.  But 13 years later this is still the book to read if you really want to understand the foundation of relational databases.  Don't read this book first if you're learning about relational databases.  Read it when you have the time to devote to understanding the concepts and theory.  If you understand the theory this book presents, you can and will be able to see and solve problems in your designs that others cannot.   All theoretical technical books are meant for you to fundamentally and intuitively understand the subject so you can solve problems and performance issues that sometimes even the vendors can't.  If you don't have those problems or you have someone else solve them for you, then don't buy this book.  Otherwise consider this book as a must have for relational database design.

Author ID	A2WN20C6JLWZIY
Useful Votes	50/51
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.966029723991507	0.0106157112526539	0.0191082802547771	0.00424628450106157
Excellent, if textually dense ACADEMIC textbook
(Note this review applies to the sixth edition of this book). If you wish to quickly jump into database design without a full and rigorous knowledge of database theory (by no means a bad thing) then this book is not for you. If, however, you want a thorough grounding in the principles  and practice of database theory considered from an academic standpoint,  then this book is highly recommended. Date is one of the giant figures of  relational database theory, and this masterful work covers, in exhaustive  detail, all the elementary principles of the subject. The book commences  with an overview of database systems and management, before moving on to  introduce the relational model. Part II of the book covers in great detail  the relational model, introducing the relational algebra and the relational  calculus (and then showing the formal equivalence of the two). The SQL  language is introduced. Part III discusses database design, with special  emphasis on the vital topics of nonloss decomposition, functional  dependencies and normalisation. For practical database designers this is  perhaps the most valuable part of the book. Part IV covers data protection  from the standpoints of integrity and implementation in practical  systems. Part V gathers a miscellany of related topics such as  optimization of queries, a discussion of the 'NULL' problem and an  introduction to ditributed (i.e. client/server) database systems. Part VI  is an introduction to object-oriented database systems, with an examination  of the problems faced by traditional relational systems when faced with  object-oriented problems. It is important to note the target audience for  this book. This book is first and foremost academic by nature. Rigour is  not sacrificed for conciseness or simplicity. It is textually dense,  especially parts II and III (far and away the most important parts). The  reader will have to put in a lot of work to fully grasp the details of the  concepts. For example, Date's definition of third normal form (3NF):  "A relation is in 3NF if and only if it is in 2NF and every nonkey  attribute is nontransitively dependent on the primary key". To  appreciate in detail the significance of this definition requires  substantial effort. However, this effort will pay dividends when the time  comes to actually design a real-world system. Failure to understand the  principles of database theory at this level of rigour lies behind many  failed implementation attempts. Not every database designer needs this  knowledge, but a manager of a large database project certainly does. I  would not recommend this book as an introductory text for an undergraduate  course in database design, due to the large quantity of material covered  and its highly theoretical exposition. I would, however, strongly recommend  it for students at a higher level, professional database designers and  implementors of database management systems.

Author ID	A2X8SXOK3MD24P
Useful Votes	5/5
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.833333333333333	0.0714285714285714	0.0595238095238095	0.0357142857142857
A relvar by any other name.
This book introduces the fundamentals of database systems by emphasizing the relational data model, and that a database is really "a collection of true .. propositions".  Although his use of Tutorial-D (rather than SQL) may seem odd, Date emphasizes thinking about data rather than an implementation.  This book provides great fundamental thinking about relational variables (relvars), domains, relational algebra, and data normalization. The further topic of missing information contrasts to Codd's four-valued logic, and even if your particular database system supports different Nulls the chapter helps when thinking about your own data.  Whether or not you agree with his thinking about object-oriented databases, his "Two great blunders" are a challenge to any software vendor.  His chapter on decision support does not provide much of an introduction to such broad topics as warehousing, OLAP, and data mining, but there are other sources.   This is not an easy read, but working through it will pay off when coupled with product training.

Author ID	A3S99OTZUMLN3Q
Useful Votes	7/25
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.954128440366973	0.0229357798165138	0.00917431192660551	0.0137614678899083
Terrible. So many words and so little content
This book is an introduction to database systems as seen from the application developer. It covers the basics of databases (most importantly the relational databases), SQL (and variants) normal forms and many other things from ther viewpoint of the application programmer. It explains why things are done like they are. It does not provide a good guide on how to design database applications or databases, nor does it help you implement your own database system. It is mostly just a theoretical text book to give an introduction to database theory. However all in all it does contain some useful information. Unfortunately this extremely poorly written and uses far too many words to explain so little. In fact, I often found myself almost falling asleep while reading it and then missing important information when it finally was there. This book are constantly updated to new editions - and this shows in a bad way. It is full of notes, asides and footnotes and the structure is terrible. One place it has a foot note that spans over three pages. This is unacceptable! In the end I cannot recommend this book. It is way to long, not focused and extremely dull. There are much better books on databases out there. Avoid this one.

Author ID	A1PS51PSU641GM
Useful Votes	6/9
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.916299559471366	0.026431718061674	0.0308370044052863	0.026431718061674
Very good theoretical book!
OK, I love this book as the relational model is explained in a good  mathematical language. Everybody who wants to know more about the  mathematical relational model, this is a very good book for self study. It  has exercises at the end of each chapter, and some answers too. There is  one big BUT about this book: every ten pages Date is howling about the  SQL-92 standard. And this annoyes me very much. It must be some personal  frustration that this respected author becomes so low in his disgust of  SQL. He tells us in the book that it is a mistake to allow nulls and  duplicates in any relational database. But mister Date should know better,  there are disadvantages and advantages on every such decision and the way  we do it now it relational databases is the most flexible one. If you do  not want to use nulls and duplicates in your databases, that is possible.  Date, please stop howling and do not write your frustration in your books.  Joe Celko writes in SQL for Smarties: "Date is also a vocal opponent  of the ANSI/ISO SQL standard efforts, although he has never attended a  committee meeting or submitted a paper for consideration". But if  you do mind or do not mind his SQL comments, it still is a very good book.

Author ID	A22DTY6L8YP2HV
Useful Votes	4/6
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.815789473684211	0.0614035087719298	0.0657894736842105	0.0570175438596491
The embodiment of Khun's "normal science"
Perhaps the most interesting fact about this text is the angle that it comes from - and that angle is clearly a scientific one. The relational model of data is a scientific model and Chris Date is at pains to expound this fact. Although the relational model is credited largely to Edgar Codd (interestly if you look up Codd in the index of this text you'll see the entry "Codd, Edgar F., passim") Date takes the theory and outlines it in such depth and clarity that this text essentially has become the bible in regard to the topic. I urge all database practioners to get a copy of this book and at least review the opening chapters. No Oracle, SQL-Server, DB2, XML, or other text will outline the fundamentals in such a comprehensive way. One of my bones with current trends in tertiary and industry education is the obsession with "product training", unfortunately too many graduates are leaving our institutions with a vague at best understanding of arguably the most complete, elegant, and instrumentally reliable model of data - the relational model (and calling themselves DBA's). Date is a credible contemporary theorist in a distinguished line including Codd, Quine, Church, and Russell and Whitehead. The direct relationship between the theory, model and the practical is undeniable - critics are simply ignorant!

Author ID	A6UO7RNYQDNV
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.889655172413793	0.0551724137931034	0.0206896551724138	0.0344827586206897
Extraordinary
C.J. Date should give technical writing classes to other authors of textbooks.  His writing style is extremely readable, and he understands his audience.  As previously stated here, this is not a practical guide by any stretch; it is a glimpse into the theoretical basis of databases in general.   One particularly clever feature is the author's use of footnotes. Since most of the theory springs from academic wells, Date will cite academic references, and provide some commentary on them that aids in reading the references; this turns out to be an invaluable tool if you are interested in researching the subject in more detail from the original sources.   This book was not intended to be a complete discourse on relational theory, nor was it intended to mask any of the details of relational theory -- it was intended to introduce the student to it.

Author ID	AYSGK9K8XVFV1
Useful Votes	8/8
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.916666666666667	0.0216049382716049	0.0216049382716049	0.0401234567901235
Be careful in your treatment of this text...
I gave this book 4 stars because it is very hard to read. I actually asked for this book as a Christmas present last year (call me a geek...it's ok), and I have pushed my way through quite a bit of it. I have 3 years experience in RDBMS only on MS SQL Server. This book is important because  it suppliments everything that was originally intended to be the definitive  RDBMS design from the master E.F. Codd. Now, you could look at this book on  the surface and say it is "usless," but trust me you'd be making  the wrong judgement. Every senior DBA that I have worked with over the past  3 years studied this text in earlier editions. Trust me, they have all been  gurus. My current manager even worked at Sybase for a while. You will be  doing yourself a disservice if you push this book aside without giving it  its due treatement. The word "introduction" is ambiguous. It's  not really an introduction at all. If you are an MS DBA like me remember  this important point: a Microsoft DBA can have it easier at times because  of the care MS has put into make it's RDBMS fit into NT or 2000. Life can  seem pretty fundamental or "real world"(whatever that means) in  the MS world. Date's lessons might not seem valuable up front. If you put  just a little thought into it you'd realize that what's being discussed in  this book suppliments the life of a "DBA." Remember, the  "A" is for administrator. If you're an administrator a system,  you're not going to find this book extrememly useful. However, start  designing a database from scratch even in SQL Server, without abiding to  Codd and Date and I wish you good luck. Be careful when you evaluate this book. It is an extremely  important text.

Author ID	A1DDRHTE1KUDOM
Useful Votes	30/33
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.0
Topic Path Probabilities	0.916666666666667	0.0416666666666667	0.0364583333333333	0.00520833333333333
An EXCELLENT theoretical treatment
An introduction to Database systems is an excellent work and to call this work an introduction is misleading (Date explains in the preface why he chose to call it an introduction).  The work is theoretically extremely  dense and it requires a lot of effort to fully understand all the concepts  that Date treats really exhaustively throughout the book.  The book gives  in-depth insight into database design concepts and it breaks every term and  concept down to the bone. The style in wich the book is written makes for  pleasant reading and Date's use of the English language is brilliant.  Date  is certainly a master of database theory and I can recommend this book to  everybody who is serious about the underlying concepts of the relational  database model.  As an academical textbook - this book is not intended for  undergraduate study but for post-graduate study it is a winner. If there  is one thing that I can complain about it is that the book sheds too few  light on the theory of database optimization.  I hope that the 8th Ed. will  also cover this topic more extensively.

Author ID	A1K085Z4QZYJLV
Useful Votes	7/14
Rating	2
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.895454545454546	0.0318181818181818	0.0318181818181818	0.0409090909090909
Not a real-life application book, but good for academics
This book is not good for anyone that wants to get into the practical applications of Relational Databases immediately.  This book is geared to people interested in learning the theoretical analysis of Relational Databases stemming from mathematical analysis.  This approach is highly impractical for real-world applications and will remain as conversation material for academics.  This book is frustrating to read since the author constantly makes references to material that is not addressed in this book, illegal use of SQL (utilizing the "#" for illustration purposes) and not indicating clearly how his examples have deviated from the way it is "traditionally done".  The author is frustrated and spends too much time berating other people's work, and his attempt to explain SQL is poorly illustrated.  This book is mistakenly referred to as the bible of relational databases and the only explanation I can think for this is that it has been around for so long and read by so many people that are endeared by the unreachable tone of his writing, that they assume this is how it should be written.  After seven editions I would expect perfection, and this book is a far cry from it.  Spend your money and desire to understand the theory behind Relational Databases somewhere else.

Author ID	A3Q8QITYGVBM6N
Useful Votes	4/4
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.783505154639175	0.134020618556701	0.0412371134020619	0.0412371134020619
Best Book on Relational Database Theory
This is a tough book to read but certainly worth the time spent. The pages cannot be skimmed through. This is no pulp fiction ( neither is database theory). Once you finished reading , the payoffs are immense. The book has a mathematical bias. And realworld database practitioners may find this aspect disconcerting. It is advisable to use your intuition and coomonsense for database design, even after reading this book. The book forces you to focus on sound design principles. A very good way to verify your work. Great book, worth the price..

Author ID	A32RIAWNQRZF42
Useful Votes	6/27
Rating	1
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.944237918215613	0.0408921933085502	0.00371747211895911	0.0111524163568773
Ick.
I dislike this book.  A lot. It seems like it could be a nice reference guide for some middle manager who needs to know "the lingo", but that's about all. One problem is that it has WAY too much stuff in it to  be an introduction book.  This alone is enough to make me look the other  way.  However, add to that the fact that this book covers almost no SQL  (seems that Mr. Date doesn't like SQL--he even says so) and you have a  pretty usless book. I have a "real world" job where I work with  databases (and SQL) regularly.  I deal directly with "real"  database people.  I have never heard any of them use the terms Date dreamed  up in this book.  Instead of sticking with the common terms (table, row,  column, etc) he has to make up new words. He also is not a very clear  writer.  I'm certainly no english major, but I would expect a published  work to be written better than this!  Especially since it's a technical  book!  Clarity is key in this situation, and he just don't deliver. I'm  all for theory-based courses and books, but this book causes more confusion  than any other text book I have ever had to use.   There is very little  connection to the way the real world works and to me that is simply the  wrong way to approach a subject.  Luckily I have real world experience with  databases, or else I would be totaly lost.  I feel sorry for the other  students in my class.

Author ID	A35Y03OF3IQBNY
Useful Votes	6/8
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.873096446700508	0.0609137055837563	0.0304568527918782	0.0355329949238579
Amazing for Engineering Students
Of the several books i have refered to on DBMS (including the one by Silbershatz), I found C J Date's book most helpful. It starts right from the basic and touches the core of any topic. This book is all about precise and minute detail (Which actually makes the small topics look really BIG). In the context of exams this will always be my first recommendation to all computer and IT students. In fact class mates often asked me how I had that EXTRA peice of information at all the times. I topped the DBMS exams this year (and; Yes sir, full credit to C J Date) thanks to the reference of this really wonderful book. This is a best buy for both Graduate + Under Graduate students. In fact learners can also get a great deal of insight into this really interestiing subject. It is important to get a good start into DBMS; because this is a very boring and dry subject "At First Sight". Others authors had made this subject eeven more dry and uninteresting. OVERALL: 1) Every students MUST have. 2) Every learners MUST have. ALSO 3) Good reference for teachers and lecturers.

Author ID	A22K0XOV8GRE5G
Useful Votes	4/16
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.797297297297297	0.0945945945945946	0.0675675675675676	0.0405405405405405
Absolutely awful
This is an absolutely horrible book. It is in NO WAY an "Introduction".  I found that the text is so dense that I can only read for 10 minutes at a time. I have learned nothing from my readings  except that I can't stand the way Date writes. I bought the book because  it is required reading for my Database Specifications class. I am returning  it and will purchase an alternate book.

Author ID	A2QQ1EG0Y1VJUQ
Useful Votes	7/54
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.761363636363636	0.125	0.0909090909090909	0.0227272727272727
Burn this Book
This book is the worst piece of swill I have some across in awhile. There is absolutely no editing by anyone whom has any knowledge of the english language. After trudging through the first five chapters, I am thinking of having my good teeth drilled. It would be less painfull. The only good that can come of this will be my renewed faith in the church, as I will head down there this sunday with the recomendation this book be burned and the earth salted.

Author ID	A2GEMN8YGDZFM2
Useful Votes	5/7
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.931129476584022	0.00826446280991736	0.0220385674931129	0.0385674931129477
The 2nd best book on Database
This book demands re-reading and bears it well.  It has been very satisfying to see the progress of CJ Date's thinking since the third edition.  After 25 years or so, I detect that he is coming far closer to the essence of his subject than others have.  I imagine he could have put this down on one page but that wouldn't be a book!   The details are great and some are so striking as to seem profound.  How many people know that there are relations that have no attributes?  Date also apologies for past misconceptions.  It is gratifying to know that he now agrees with what some suspected - an relation attribute's value can be another relation, if we want it to be.  The book is full of wisdom like that.    Just like the author, I wish the builders of so-called relational systems would pay some attention to this thinking (which he freely admits is not all his own).  Then they might spend less time refining ideas which the reader of this book will realize are clearly wrong, like not separating the physical from the logical.  If they also read his 'Third Manifesto', co-authored with Hugh Darwen where his personal opinions shine through even more, they might see ways to simplify further as well as apply the ideas in new and useful ways and take databases to a new level. This book is not for anybody who only wants a 24 hour, or even a 21 day, treatment, although those are OK as far as they go.  It is for anybody who is interested in the field, but perhaps not for some who only want a job.  But i think this book has to be read to understand why! I would pay more for an even longer book with more detail on some of the early papers by others such as those about normalization.  These papers are now very hard to obtain.  The best book i've read on database (perhaps i should say relations and THEIR foundations) was Introduction to Mathematical Philosophy by Bertrand Russell, written in 1917 no less!  It also bears re-reading.

Author ID	A3Q1CGP3ZZ5QQT
Useful Votes	8/10
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.916666666666667	0.0340909090909091	0.0340909090909091	0.0151515151515152
Strong foundation for relational database systems
In our courses we need a mix of theorical and practical approaches. I found this book to be excellent in academic environments, as well for any person looking for the formal basis of the relational database systems. This book will give us all the formal foundation to start our courses (and more). The author goes beyond the pure formal maths, and introduces us in a wider concept of the database world as a science, unlike other books which performs a more superficial approach. This book will give you a substantial change of your point of view when dealing with real world databases, the answer to many of your questions will be found here. This year (I'm writing this in July 2001) we'll strongly recommend it to our students. I read the spanish version, translated in Mexico, and found the language pretty academical. Far from being a downside, I think this is an advantage in our case. We are talking about science, and perhaps we need minimal language to deal with science. Under this scenary, this book is certainly the way to go.  And outside that scenary, in the so-called real world, if you're a daily user of any RDBMS, or programer, or system developer, or DBA, etc. you'll do yourself a big favor if your read this book. Next time when you get involved into a casual discussion with your colleagues, many concepts from Mr. Date's work could take you to an unmatched position when exposing your points of view. Very recommended, indeed.

Author ID	A28GX0W6908GLP
Useful Votes	5/6
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.794117647058823	0.132352941176471	0.0441176470588235	0.0294117647058824
A must have!
This book clearly explains how relational DB systems are designed and gives a solid foundation for you to do anything in the DBMS field! This is the best book I've found so far to cover this complex topic. I wish I hadn't wasted my time on other lesser books. I'd definetely recommend this to anybody that is serious about computers and databases!

Book ID	Title	Number of Reviews
0321197844	An Introduction to Database Systems	8

Author ID	A2TZ6DETANJ80Q
Useful Votes	11/12
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.958441558441558	0.00779220779220779	0.0103896103896104	0.0233766233766234
the database practitioner's bible
I suppose there are two potential audiences for an introductory database book. The first audience consists of developers who need to know the very basics about databases to design and  implement a database computer application. For that group I would recommend Date's book, but only upon having sufficient "computer science maturity": i.e. having taken one year of programming, and possibly a course in discrete mathematics and/or data structures and algorithms. Without this maturity much of what Date writes will be very hard to appreciate if not comprehend. True, he gives numerous examples that are quite understandable, but he also spends many paragraphs discussing somewhat abstract issues to the novice that will make him or her want to skip ahead. A good example of this is the notion of thinking of a table as the current value of a relvar, or the importance of closure in the relational algebra. The paragraphs he spends on these subtle importances will frustrate the uninitiated reader.   For someone who does not believe that he or she has the maturity to handle this book, and simply wants to develop an application that requires a database, I would recommend buying a more "down-to-earth" book possibly covering the RDMS that will be used. For example, if it is MySQL, then one might want to purchase  Welling's "MySQL Tutorial" (ISBN: 0672325845) for a much gentler and user-friendly introduction (or better yet the PHP and  MySQL web development book if a web application is desired).  The other audience for this book are the professionals who are in charge of managing a database and/or using a database server for an industrial-strength application. In this case, Date's book is mandatory reading. May be not all of it, but certainly Parts I-IV. Reading these parts will give the professional the needed perspective on all the considerations required for successfully using or managing a database system.  In the world of database systems, Chris Date is one of the few authors who understands the importance of every minute detail involved with successfully using and managing databases. He proves that in this book, in a style that is not only academic but also quite useful and practical (especially his chapters on the relational algebra and calculus).

Author ID	A22SFGXCIQIELK
Useful Votes	9/33
Rating	2
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.940350877192982	0.0140350877192982	0.0210526315789474	0.0245614035087719
Not what the title suggests
Based on the title and the price, I expected the book to be a matured (8th edition), undergraduate-level text that introduced the reader to databases, complete with color diagrams.  It wasn't.  After reading the first 8 chapters (250 pages) I've learned nothing of any PRACTICAL use (note that I've learned a few things, but they can't be applied directly to my job).  In fact, if this were the only source on databases I'd ever read, I would be less prepared for my job than if I had simply read a "Teach Yourself ..." type book:  one would be much better off with one of those books if he/she wanted an introduction to databases.  And for those who appreciate the use of full-color graphics to help explain concepts, forget about it.  There are only a handful of diagrams and they are black and white, simple renderings: the rest of the figures are mostly just text set off from the rest of the page.  Also, it uses so called "Tutorial D" language throughout, so you have to learn it in order to follow the discussions.  The book is too formal for an introduction and would lose readers not already familiar with the topic.  If an "introduction" book is going to be formal and an??-retentive, it should first teach the reader the concepts by analogy or by simple example or by some other intuitive means, and only then introduce the equivalent formal discussion.  This book doesn't do that. The author does know the subject, and the book does has worth...just not as an introduction to databases or as the sole means of learning about databases.

Author ID	A3FC3WICI1EE70
Useful Votes	12/12
Rating	5
Topic Path	0	1.1	2.1.1	3.1.1.0
Topic Path Probabilities	0.881188118811881	0.0396039603960396	0.0792079207920792	0
A classic, to be read by any serious developer
Date's seminal work is critical to understanding databases - a step mostly forgotten by those who believe every concept can be taught using commercial products with brain-dead examples in under 24 hours. Date teaches the logic and theory that underlie all successful practice. You can probably buy a different book and create a mock database faster, but you will neither understand nor be able to use it well. Do yourself a favor and read this first to understand what a database is; only then can you judge the value of other books.

Author ID	A89840IILHY8E
Useful Votes	21/21
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.855263157894737	0.0921052631578947	0.0263157894736842	0.0263157894736842
An indispensible text for serious practioners
This is not a how-to, it is a how-to-understand. I own multiple editions of this book starting with the 3rd, when many of the examples referred to RBase. It won't tell you, with simple color diagrams and cut-and-paste examples, how to optimize your Oracle SQL queries or tune your DB/2 engine, but it will teach you the underlying principles of relational databases, from which the serious professional will be able to extrapolate. If you have the intelligence and stomach for it and you actually read it, it will serve you much better than the SQL in 24 hours picture books that some reviewers seem to be looking for -- it is a timeless and effective conceptual work on the subject that spans the evolution of commercial product implementations. Dilitantes and desperadoes, head for the Dummies aisle -- this one's not for you.

Author ID	A22XC32O7GE4YU
Useful Votes	5/6
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.847682119205298	0.0728476821192053	0.0529801324503311	0.0264900662251656
The  Best Introduction to Databases,
C J. DATE is one the most important researcher about databases, and his work is dedicated to explain in simple terms, those that in other forms will be too much difficult to understand: like real methodology of normalization or the BNF Notation, very usefull when is neccesary read the ANSI/ISO Standars, or the  Boyce/Codd Normal Form.In 1990 i read Date for the first time,  i need to review his Powerfull Introduction again, but C.J Date do not write in order to  "Perform a Database Design, in 24 hours" , he write to understand, first, what really are in Database World, the semantics of data, the Codd Theory, The importance of ERD of P.Chen, he doesnt write a HelpDesignBook! To read a Dates Book is find the core of Database Theory and is the first step to have succefull in a design process.

Author ID	A32FBVF40KQTCN
Useful Votes	7/53
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.890625	0.0416666666666667	0.0416666666666667	0.0260416666666667
A little content of interest, but mostly a lot of fluff.
Date's conversational style makes this book easy to read, which is good because there is a lot of extra reading required.  Unfortunately, the content does not match the volume--surprisingly little can be gleaned from it's numerous pages.  If the chapter summaries were slightly more detailed, it would be sufficient to understand the material. If you've read some of Date's other works, you won't really find anything new, as this book is significantly based on various of his previous publications.  However, this is a convenient compilation, with meaningful footnotes to chapter references (some of which are by other researchers), for anyone so interested.  Just don't expect to be able to apply much of what you read in any situation outside a classroom. If you're a student and have to buy this book, then just grin and bear it--many in academia consider Date an expert.  If you're a DBA, there won't be anything new or meaningful for you, it's just too light-weight (remember, the title says it is an introduction)...

Author ID	A1J5WEKFP39E1K
Useful Votes	11/14
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.914438502673797	0.0160427807486631	0.0267379679144385	0.0427807486631016
A "must have" for data management professionals
As one of E.F. Codd's closest associates Chris Date has long provided the world with some of the most insightful writings on the relational model of data management.  Much to their proponents chagrin, he also writes incisively about the various "improvements" to the relational model. Those who are looking for a cookbook approach to any specific DBMS platform will be sorely disapointed.  This book will not help you obtain your MCDBA, OCP, or any other alphabet-soup certification.  However, for anyone looking for a firm foundation of data management fundamentals and the practical implications of such, this is THE book to read.   Chris' style of writing tends to be a bit academic and precise.  This quality does turn some folks off, but it is this quality that makes his writing so valuable.  Read it, re-read it and learn this stuff!  No one can seriously consider themselves a data management professional without a good grasp of the material in this book.  This is the book that other authors refer to when they want to get their facts straight.

Author ID	A1RX669W3L1PDI
Useful Votes	22/23
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.949579831932773	0.0224089635854342	0.0252100840336134	0.00280112044817927
An Introduction for Software Engineers, not Users
Sorry, no full-color graphics, and no included disk full of fill-in-the-blank examples and wizards to build your contact list. This is an old-fashioned academic tome, not a how-to book or thinly-disguised marketing tool for some commercial database system. I suppose the biggest criticism I could make of this book is that it overestimates the target audience. Unfortunately, many who see the title of this book assume that it will teach them how to work with current database products such as Oracle, or maybe SQL Server and Access. No, this book doesn't show you how to create an invoicing system for your bicycle shop, or a web content management system. What it will show you is the conceptual underpinning of the relational data model, how to understand relational database systems in general (not everything is SQL, you know), and provide some heavy insight into how relational databases should be designed. In that sense, it can be considered an "introductory" book for software engineers, who might themselves create a new database management system. It can also be considered introductory for database administrators and systems programmers who are looking to expand their knowledge beyond the product-specific practical methods they have been exposed to. In other words, if you just want to know "how things are done" in your industry, don't read this book. If you want some insights into how things COULD be done much better, you might want to read this book. So, while I might not recommend this book to a junior programmer tasked with creating his/her first web-based ordering system, I might recommend it to the company DBA or systems architect. Even more, I would recommend this book to anyone studying C/C++, and looking to start a career in software engineering, possibly to help create new database systems. This book doesn't discuss specific implementation in C++ or anything like that but it provides an excellent target feature set and language spec for development, as well as a clarification of the formal logic behind relational database management.

Book ID	Title	Number of Reviews
0596100124	Database in Depth: Relational Theory for Practitioners	9

Author ID	A1N705GP6JWTAY
Useful Votes	6/6
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.958208955223881	0.017910447761194	0.00298507462686567	0.0208955223880597
totally solid
This book is more or less exactly what it claims to be: a solid theoretical grounding in the relational model targeted at working software developers and database programmers. It combines concise explanations with explorations of pragmatic concerns, and includes genuinely useful exercises at the end of each chapter. If you're somebody who understands things best when you understand why the system is doing what it does, you'll find this book invaluable in sorting through questions like, "Why should I normalize the schema? Why are NULLs bad? What's a quota query?"  Speaking as someone who really enjoys abstract theoretical discussions of programming concepts, my only significant fault with the book was that occasionally Date's use of language was a little more informal than I would have liked; I would have liked a slightly more rigorous explanation of the links between the predicate calculus and set theory and the relational model, and could have used more mathematical notation. In addition, sometimes Date is... if not disingenuous, a little quick in glossing over the changes he has made to the relational model over the years (he and E. F. Codd, the originator of the relational model, diverged in their thinking a bit over the years).  One caveat: this book is not a cookbook or a how-to guide. It works from first principles outwards, and as such isn't exactly filled with immediately useful code snippets. In fact, as much as possible Date uses his own relational data language, Tutorial D, instead of SQL. He does have good reasons for disliking SQL as a pedagogical tool (or much of anything else), which he explains in depth throughout the text, but people who work best with directly applicable code they can pick up and apply to their own problems will find this book frustrating.  Overall, though, this is a quick, dense read and will do an amazing amount to clarify your thinking about how database systems work and what they ought to be.

Author ID	A2A7HO31Y0B3DW
Useful Votes	3/4
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.842105263157895	0.0701754385964912	0.0526315789473684	0.0350877192982456
Great for those with some math
A really outstanding presentation of the core of the relational model, and a discussion of where SQL falls short (-- a lot). Date assumes you know a reasonable amount about databases already so he can be concise and to the point.   Some mathematical background would be a plus for reading this book.

Author ID	A2BLY02P03LMAI
Useful Votes	8/9
Rating	4
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.98014440433213	0.0126353790613718	0.00180505415162455	0.00541516245487365
Learn Why SQL is Not a Relational Language
Many years ago when I was a student we were taught database theory. Although Ted Codd's paper "A Relational Model of Data for Large Shared Data Banks" had been published fifteen years earlier, relational databases hadn't yet become the dominant species and we were taught a number of alternatives (does anyone else remember Codasyl?) systems - relational databases and SQL were just the newest option.  Of course, once I left college and started working for a living, it wasn't long before relational databases were the only game in town. And over the years I've forgotten most of the non-relational theory that I once knew. Or, at least, that's what I thought. Reading this book, I realise that I had forgotten most of the relational theory too.  The relational model is what underpins most of the databases that we use in our day-to-day work. But in many ways, the databases that we use today have diverged greatly from Codd's original ideas. Many of the features of todays databases would have no place in a purely relational database.  And that is what Chris Date's latest book is all about. He reminds us of what a really relational database would look like and points out where current implementations fall short. In particular, it's clear that Date blames the ubiquity of SQL for most of these problems. SQL, he reminds us, started out as an attempt to put a user-friendly(!) query language on top of the relational model. When that didn't really work out, instead of going back to square one and trying to implement a better relational query language the database vendors instead stuck with SQL and ignored the bits of the relational model which it couldn't support. For most of the examples in the book, Date gives an SQL query alongside the same query rewritten in "Tutorial D" a relational query language of his own creation.  The book does contain a useful introduction to the relational model, but I have to say that in doing so it uses some mathematics that many potential readers might find a bit galling. Personally, I'd be very happy if more database practioners understood the underlying maths to the level required to read this book as that would hopefully mean an increase in the average quality of the database designs that I come across.  Date is at his most interesting when he is talking about the advantages that a "proper" relational database implementation would bring us. As he says in a recent interview:  "As far as I'm concerned, an object/relational system done right would simply be a relational system done right, nothing more and nothing less."  There are some exciting possibilities in a truely relational database, but it would mean the industry admitting that its current implementations are flawed. And I don't see that happening.  If you work with databases and you have any interest in the mathematical theories behind how your database works, then I recommend you read this book. You'll come out with a deeper understanding of your current database system. But, perhaps more importantly, you'll also have a slight sense of disappointment when you realise how good your database could be.

Author ID	A2QT0KPQU671OU
Useful Votes	7/13
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.852272727272727	0.0909090909090909	0	0.0568181818181818
Short primer on relational theory
I found this book far more accessible than Date's other book; "An Introduction to Database Systems". He provides an explanation of relational theory then demonstrates it in a simplified SQL format. Normalization is covered well. That's critical to understanding proper schema design.  The text of the book is a little dry and academic. Which I suppose is to be expected. In addition Date has his viewpoint expressed clearly in the book. An example is his aversion to the use of nulls.

Author ID	A3R19YKNL641X3
Useful Votes	30/36
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.96043956043956	0.0131868131868132	0.0131868131868132	0.0131868131868132
Make sure you're ready for lots of theory...
Over the last week or so, I've been reading C. J. Date's book Database In Depth - Relational Theory for Practitioners (O'Reilly).  While it's a well-done title, it's the type of book I have a hard time reading...  Contents: Introduction; Relations Versus Types; Tuples And Relations; Relation Variables; Relational Algebra; Integrity Constraints; Database Design Theory; What Is The Relational Model?; A Little Bit Of Logic; Suggestions For Further Reading; Index  C. J. Date, along with E. F. Codd (the acknowledged "father" of relational database theory), are probably the two most influential individuals in this field.  Much of what we know and practice in today's RDBMS packages all goes back to the work these two have done.  Rather than write a textbook style discussion of the finer points of database theory, Date has used this book to update some of his thinking and to consolidate a number of his talks and writings of late.  For serious students of relational database concepts, I'd consider this the latest "must read" to keep up with current thinking by one of the masters.  Having said that, I had a hard time slogging through the material.  I tend to gravitate to technical reading material that is practical and understandable.  Debates over finer points of arcane minutia will cause me to zone out quickly.  Unfortunately, I felt that way through a lot of this book.  There is a lot of solid technical material here, and it's definitely geared towards serious readers.  Date doesn't have a lot of kind words to say about how database vendors have implemented the relational model, nor does he feel SQL is a good thing.  I, on the other hand, figure the packages are what they are, and you had better learn to use them to create the systems needed by your customers.  That's probably why I'm a developer and not a system architect.  Reading a number of pages on why Date and Codd disagree on whether nulls are valid or allowed doesn't do much for me.  They're there, you need to understand them, and then you need to move on.  Another hard part for me was the heavy emphasis on mathematical proofs and such.  Since I don't have that type of background, I'm quickly lost...  Even though I wasn't completely enamored with the book, I still think it is a good title.  For the right reader, this will be material that they will benefit from.  For the average person who got training on Oracle or DB2 and understand basic relational database theory, this may be a bit more difficult to get through...

Author ID	AG35NEEFCMQVR
Useful Votes	29/32
Rating	4
Topic Path	0	1.1	2.1.1	3.1.1.0
Topic Path Probabilities	0.849397590361446	0.0421686746987952	0.0602409638554217	0.0481927710843374
shows limitations of SQL implementations
Hmm. Didn't look like an O'Reilly book, at first glance. No 19th century style woodcut on the cover. Seriously, though, Date presents what you might call a "clarification" of a relational database usage. He takes issue with current SQL implementations. But to gain from this book, you need proficiency in SQL and some understanding of relational databases. Not for the tyro.  If you also hail from a pure maths background, that will aid in understanding. He revisits the basic concepts of relational databases; injecting considerable rigour into defining these. Perhaps most importantly, he shows why nulls are very bad in a table. Relational theory is built on Boolean logic, but nulls force a ternary logic that can screw everything up. And duplicate tuples (rows) are almost as bad. The fact that all current SQL implementations routinely permit nulls and duplicates shows their limitations.  Rather unsettling, if you thought that db2 or Oracle were the last words in this field.

Author ID	A1S3TSA4QTUHT9
Useful Votes	15/20
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.931937172774869	0.0366492146596859	0.0104712041884817	0.0209424083769634
Make your move from journeyman to master
Relational atabases are fundamental to today's IT operations. They underpin virtually all transactional and content management systems. Knowing  how to work with relational databases is a critical tool in every IT practitioner's kit.  However, many learn how to use RDBMs via practical, on-the-job experience, or perhaps through a RDBMs vendor class, without understanding the underlying theory. Just as many programmers who work with classes and objects could become more proficient with a deeper grasp of object theory, the same is true for database designers, DBAs, and software engineers responsible for data interface layers.   This book provides a great knowledge base of the general theory of RDBMs in an thorough, well-organized and easy to read format - which is not an easy combo to carry off.   Database in Depth is particularly useful if your exposure to RDBMs has been through the lens of a particular vendor. It's easy to get confused between functionality and implementation; this book helps clarify the difference.   If you feel like you use databases without really understanding what does on under the hood, read this book.

Author ID	A19206XXCJ0YAT
Useful Votes	4/8
Rating	2
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.928792569659443	0.021671826625387	0.0278637770897833	0.021671826625387
Short yet wordy and painful to read. I returned this book.
I found that while the content of this book as within my grasp, "Database in Depth" was very hard to read. Judging from the content and writing style, I don't believe this book was written for practitioners.   This book is very focused on the author and his opinions; the word "I" was very much overused. Even each point in the chapter summary is started with "I" which is very unusual for a technical book. Another reviewer wrote "Debates over finer points of arcane minutia will cause me to zone out quickly. Unfortunately, I felt that way through a lot of this book." I couldn't agree more; this book is very dogmatic. The sentence structure and grammar also made Database in Depth a hard read. Runaway ideas and sentences with excessive punctuation left me frustrated.   To demonstrate the above points, here is a portion of the summary of chapter 1.  "- I claimed that SQL and the relational model aren't the same thing. We've seen a few differences already-for example, the fact that SQL permits duplicate rows-and we'll see many more in later chapters.  One last point (I didn't mention this explicitly before, but I hope it's obvious from everything I did say): overall, the relational model is declarative, not procedural, in nature; that is, we favor declarative solutions over procedural ones, wherever such solutions are feasible. The reason is obvious: declarative means the system does the work, procedural means the user does the work (so we're talking about productivity, among other things). That's why the relational model supports declarative queries, declarative updates, declarative view definitions, declarative integrity constraints, and so on."  Today I returned "Database in Depth" and picked up "Designing Effective Database Systems" (Riordan, 2005) instead. I'm already finding this Addison-Wesley title to be much more useful and down to earth.

Author ID	A2WKQWVCPD4OX3
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.878787878787879	0.0606060606060606	0.0424242424242424	0.0181818181818182
Excellent Book
I am writing a review on Amazon for the first time. I had thought about writing review of some books I read but I always kept postponing it. Chris Date's Database in Depth is one of the best written technical books I have ever read. Date is a terminology freak and he leaves no stone unturned in being correct to the last letter. Some people say that its a dry book, but I found it thoroughly enjoyable. Before reading the book I knew little about relational theory (although I could write some SQL queries), infact I thought that "Relational" referred to the relationships between tables. This book has been an awesome revelation and now I have started to read C.J.Date's Introduction to Database Systems book also. As a side note, I would like to find out whats the expansion of 'J' in C.J.Date :-) Hope atleast some of you will find the book as beneficial as I did.

Book ID	Title	Number of Reviews
0201530821	Computational Complexity	8

Author ID	A2TZ6DETANJ80Q
Useful Votes	7/12
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.779411764705882	0.132352941176471	0.0441176470588235	0.0441176470588235
An excellent inroduction to computational complexity
Papadimitriou is one of the great minds in computer science, which is  reflected in this gem of a book.  His prose is very engaging and he covers  just about every topic (although be it lightly) relevant in modern  complexity theory without overly diluting the proofs and results (for  example, he gives a nice concise proof of Razborov's theorem on monotone  circuits).

Author ID	AFM2WB11XHFEX
Useful Votes	1/1
Rating	4
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.860215053763441	0.0645161290322581	0.010752688172043	0.0645161290322581
Good overall.
A well-written book that teaches you how to think about complexity theory instead of just a flat summary of results. Something like Lewis and Papadimitriou's _Elements of the Theory of Computation_ would be more than enough preparation for this (note that the style of these books is quite different- this one is more informal and descriptive). Covers all the material you need in a first text. Has a good little introduction to mathematical logic in it, including a nice succinct version of Godels Incompleteness Theorem.  Lots of interesting exercises.

Author ID	AVR70AN1R9IY4
Useful Votes	3/7
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.857142857142857	0.0816326530612245	0.0612244897959184	0
Great book on Computational Complexity
This book covers all from fundamentals of theory of computational complexity to recent results.  The book can be easely read by a reader with larger amount of mathematical knowledge, but for non-mathematical  oriented readers it maight be a problem to read this book.

Author ID	A1AMTYHDM493II
Useful Votes	4/6
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.936507936507937	0.0317460317460317	0	0.0317460317460317
Challenging
I found this book hard to follow. However, I suspect I did not have the strong background in complexity theory required by it. This probably should not be the first book you read on this subject. It is a dense book and will probably reward intense study. Also I think it is a good reference as it discusses most of the important complexity classes out there. The only problem is that I think it is slightly outdated by now, being published in 1994 and hence does not contain much discussion of the latest results especially on inapproximability, the PCP theorem and so on. However, this is THE standard text on complexity theory and many people swear by it, which is why I still give it 5 stars.

Author ID	A1M3R1TOQB4VD2
Useful Votes	1/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.777777777777778	0.125	0.0833333333333333	0.0138888888888889
For the Student
As an undergraduate computer science student studying theory, I found this book facinating and helpful.  It clearly explained the primary concepts of complexity.  The theorems are useful and the proofs are fairly straightforward.  All in all, an interesting read.   He spends a little bit too much time on logic, and his proof of Rice's theorem is a bit odd, but all in all this is a great book.

Author ID	A1DO3FL1DWNHCR
Useful Votes	22/26
Rating	3
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.805970149253731	0.0796019900497512	0.0646766169154229	0.0497512437810945
Good Information, Poorly Executed
I used this book for a reading course in Complexity Theory.  In going  through the text, I found that though most topics were introduced in a  fairly thorough manner, with enough axamples to make them understabdable,  sometimes Papadimitriou would make some fairly simple mistakes.  Of course,  hese mistakes may be seen as typos in many places, but the sheer volume of  them is difficult to attribute to typos alone.  The readability of a proof,  or a solution to an example is greatly reduced with the presence of  inconsistent notations, and plain mathematical garbage. The set of  references and notes listed at the conclusion of most chapters was  excellent, but the reader is to beware that some of the references listed  are wrong (Cook's Theorem is from the 3rd  ACM Symp. on Found. of  Comp.Sci., not the 3rd IEEE Symp. on Found. of Comp. Sci., for  instance). These problems make it difficult for the comitted learner to  get all the information he/she wants, and greatly detracted from my  enjoyment of the text. Unfortunately, I am unable to direct people to a  more consistent text in Complexity Theory suitable for the senior undergrad  through graduate levels.

Author ID	A153EG93UY4HTA
Useful Votes	0/3
Rating	1
Topic Path	0	1.0	2.0.1	3.0.1.0
Topic Path Probabilities	0.837837837837838	0.0540540540540541	0.0540540540540541	0.0540540540540541
The book is simply not useful
If your purpose is to learn something. This book is really bad at teaching you.  The author assumes many things. He has no idea of building things in a gradient. He leaves out the details of how something was arrived at.  If his purpose is to show off, then he has achieved. If his purpose is to create a text that is readable and understandable. He has failed.

Author ID	AZA8VBT80GR4J
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.93956043956044	0.032967032967033	0.010989010989011	0.0164835164835165
It is hard to catch some ideas, but it is worth reading
Yes,it is generally "hard" for undergradute students even grad. students. If you are taking course "Theory of computation", I would like to recommend the Sipser's or Cohen's books for reading supplement. However, this book covers so many topics, that it becomes too dense, so that you should read it carefully and slowly. For example, it introduces the "reduction" in some previous chapters but without precise defintion and therefore misses the more important part :how to do the reduction in the right way and what is the reseasonable reduction ? You will find the concept of "reduction" is not very easy to catch if you refer to the Sipser's or Ullman's books. I admit that I could not go through more than 20 pages of this book in the beginning. But I was keeping on reading and surveying some "easy books". Finally, I understand most half parts of this book. Moreover, if some readers prepare to study more advanced and recent topics, this book is the a must.

Book ID	Title	Number of Reviews
0198538642	Neural Networks for Pattern Recognition	14

Author ID	A2BZJ5TI3S3OXP
Useful Votes	16/16
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.776315789473684	0.105263157894737	0.0789473684210526	0.0394736842105263
An excellent introduction to pattern recognition
Do not be put off by the title:  this book is more about pattern  recognition than neural networks.  Of course it covers neural networks, but  the central aim of the book is to investigate statistical approaches to the  problem of pattern recognition.  An excellent companion to "Duda  & Hart". As other reviewers have said:  you will need a  reasonable maths or stats background to get the most out of this book.

Author ID	A338MJ0VWZ11KX
Useful Votes	3/4
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.857142857142857	0.0476190476190476	0.0476190476190476	0.0476190476190476
fine technical exposition
I found the clarity of the math and technical aspects of pattern exposition to be extremely high. The more math, in particular statistics, one has the better, but still does an excellent job in explaining some of the basic concepts for those who have not had sufficient exposure to them. Certainly fundamental and I would consider a valid university text.

Author ID	A39KKPE4NFFF78
Useful Votes	2/3
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.76	0.1	0.06	0.08
It makes a difficult topic easy to understand
The theories of NN and PR are quite difficult to understand. But this book makes them much easier. The author can explain the concepts without using too much formula. If other authors could follow his step then the life is much easier!

Author ID	A3G545YMVB6CUZ
Useful Votes	25/27
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.933774834437086	0.0132450331125828	0.0165562913907285	0.0364238410596026
Grows on You
This book came out at about the same time as Ripley's, which has almost the same title, but in reverse. At the time, I liked Ripley's better, because it covered more things that were totally new to me. Then a friend said he had chosen Bishop for a course he was teaching, and I went back and reconsidered the two books. I soon found that my friend was right: Bishop's book is better laid out for a course in that it starts at the beginning (well, not quite the beginning--you do need to be fairly sophisticated mathematically) and works up, while Ripley's is more a collection of insights all at the same level; confusing to learn from. Bishop is able to cover both theoretical and practical aspects well. There certainly are topics that aren't covered, but the ones that are there fit together nicely, are accurate and up to date, and are easy to understand. It has migrated from my bookcase to my desk, where it now stays, and I reach for it often. To the reviewer who said "I was looking forward to a detailed insight into neural networks in this book. Instead, almost every page is plastered up with sigma notation", that's like saying about a book on music theory "Instead, almost every page is palstered with black-and-white ovals (some with sticks on the edge)."  Or to the reviewer who complains this book is limited to the mathematical side of neural nets, that's like complaining about a cookbook on beef being limited to the carnivore side.  If you want a non-technical overview, you can get that elsewhere, but if you want understanding of the techniques, you have to understand the math.  Otherwise, there's no beef.

Author ID	A1GB3MM9F5LNV
Useful Votes	4/5
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.833333333333333	0.0625	0.0625	0.0416666666666667
Sheer pleasure.
If you want a very good, intermediate introduction to pattern classification this book must be on your bookshelf.  It even does a very nice job explaining the EM algorithm in  a few pages!  Basic calculus is all you need to understand the book.  A must read.

Author ID	ABFN8SJDGYMK8
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.935064935064935	0.051948051948052	0	0.012987012987013
Very formal and well presented
Although this book is not for beginners, you can use it as a startup text as long as you can understand the math behind it. The contents are beautifully presented and with the expected detail and formalism of such a great book. As a software developer I also use other books that are more algorithm-centered, but this is the one I look for when I want to read a formal exposure.

Author ID	A3PP1W9AZBUWA3
Useful Votes	6/8
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.885714285714286	0.0571428571428571	0.0571428571428571	0
NOT FOR BEGINNERS
This book is not for beginners. It is heavy into the mathematical side of neural networks. I bought this book hoping to be able to take away the overall picture, a more conceptual overview, but my ignorance in math prevented that. In one sentence: Way over my head. I'll give it 5 stars because the people who could understand it seem to think the world of it :)

Author ID	A3FF6MJMCN5WFV
Useful Votes	27/27
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.865384615384615	0.0512820512820513	0.0576923076923077	0.0256410256410256
An excellent book
When I came across this book, I had already read several on the subject, including Beale & Jackson (lightweight) and Haykin (middleweight) For a reader unafraid of basic statistics and linear algebra, this is an excellent beginning book. For the math wary, I would say read a math-lite conceptual book first. This was a text book in my master's program, and I heard from students with a weak math background that they found it extremely challenging. Bishop rightly emphasizes the statistical foundations of feedforward networks. This is a large subject in and of itself, and he covers it well. It provides an extremely solid foundation. Neural dynamics via recurrence, Hopfield Nets, and many other topics outside or on the edges of feedforward networks are not covered.  I find many NN books are poorly written, imprecise, and have little content. This is one of the best books I have read on the subject.

Author ID	A30TEOPZPXR20H
Useful Votes	13/22
Rating	3
Topic Path	0	1.1	2.1.1	3.1.1.1
Topic Path Probabilities	0.91	0.03	0.04	0.02
Disappointing from my point of view
I was looking forward to a detailed insight into neural networks in this book.  Instead, almost every page is plastered up with sigma notation (which gets incredibly tedious after the first 5 chapters).  The author relies on formulae too much to impart his obviously vast expertise onto the reader.  I am an above average computer programmer, and I understand most of the concepts in this book, since I have come across them in my other research projects.  But Bishop does very little to explain some of the important key concepts in this book.  For example, why so much mileage can be gotten out of integrals and sequences in this field is mystifying.  Practical knowledge if NN's are not only assumed but taken completely for granted! I imagine that a great deal of knowledge can be gleaned from this compendious tome, but it is very hard reading. Good use of graphics though.  I just wish this book was twice as long, so he could have fitted in some more background info.  Then and only then will this book be worth its 26 asking price in my opinion. I just hope it comes in useful one day!

Author ID	A227XAUUKE2RWX
Useful Votes	1/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.77124183006536	0.124183006535948	0.0784313725490196	0.0261437908496732
Fabulous
This is the best book I have found for a general study of the of neural networks.  I found this particularly useful when looking at how to write my own NN frameworks.  The depth of the mathematics allowed me to easily answer questions like: 'what if I replaced function abc with xyz'.  I have found other texts failed to show key mathematical derivations, or to explore the subtleties of what the maths imply.  The book covers a plethora of topics from simple gradient descent through second order techniques and conjugate gradient, through to the use of 'bayesian techniques' (basically confidence intervals on network outputs), monte carlo techniques etc.  Similarly error functions, non-linearities (sigmoids, softmax etc.) and data preparation are all treated.  The extensive bibliography also provides excellent references for further study, (a whos who of the field, as well as actual titles).  My copy is now dog earred from frequent reading.

Author ID	A1NG415FQT2ZOY
Useful Votes	2/2
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.863247863247863	0.0598290598290598	0.0427350427350427	0.0341880341880342
Believe me -- there is no better book for beginners
This is definitely the NN bible for beginners. I used it first in 1996 just after it came out and I still use it for reference. Reading some of the other reviews I saw that some people think there is too much math in the book -- that is not true -- the well explained math in the book is necessary to make the topic extremely clear.  Now 6 years later it would be nice to have a second, extended edition covering other successful NN related areas like recurrent NNs, PPCA, ICA, etc., also maybe some online adaptation techniques using Bishop's gift of being able to explain in simple words & math.

Author ID	A28KX7UZX935M3
Useful Votes	0/0
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.1
Topic Path Probabilities	0.870967741935484	0.032258064516129	0.0806451612903226	0.0161290322580645
Very good work
This book is the best treatment of the subject. To really understand the content, it's necessary prior knowledge of probability theory, but not in depth. It is well illustrated and, more important, the topics are explained in manner logic and sweep. This work don't contains everything, but it's cool because it's readable and sufficient rigorous.

Author ID	AUJQXE4NHR1ON
Useful Votes	0/1
Rating	5
Topic Path	0	1.0	2.0.1	3.0.1.1
Topic Path Probabilities	0.810810810810811	0.027027027027027	0.0810810810810811	0.0810810810810811
Recomended book to read
This is a recommended book to read for people who would like to read about statistics and maths. People with few knowledge about these sciences will find it a bit difficult to read.

Author ID	A3SWVH2M8WP2AC
Useful Votes	4/9
Rating	5
Topic Path	0	1.0	2.0.0	3.0.0.0
Topic Path Probabilities	0.774193548387097	0.161290322580645	0.0645161290322581	0
Excellent mathematical reference of Neural Networks
A good book if you are looking for learning mathematical teory of Neural Networks or set a parameters of comercial application. Not recommended for beginners

