Algorithms Books


Books-Under-Review-->Computers-->Algorithms-->2
Related Subjects: Compression Speech Recognition Computational Algebra Pseudorandom Numbers Animated Sorting and Searching Complexity Publications
More Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250
Algorithms Books sorted by Average customer review: high to low .

Algorithms
Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Art of Computer Programming Volume 3)
Published in Hardcover by Addison-Wesley Professional (1998-05-04)
Author: Donald E. Knuth
List price: $69.99
New price: $42.18
Used price: $35.00

Average review score:

Excellent but needs improvement
Helpful Votes: 0 out of 4 total.
Review Date: 2005-09-03

Excellent reference.

However, I didn't like the idea of using MIX assembly language. Book would have been more readable if examples were in plain english pseudocode (even better would be 'C'). At least second edition should have taken care of this aspect.

I also suggest books from Cormen & Sedgewick on same subject.

Legendary book
Helpful Votes: 17 out of 20 total.
Review Date: 1999-12-22
This book is bible of computer programming.

It contains most detailed explanation of searching and sorting methods I ever found in a book. Contains all internal sorting and searching and external sorting and searching algorithms.

The only drawback of the book is that all algorithms are written in MIX - some kind of assembler, and because of that they are hard to read.

Just try sorting and searching with out this book.
Helpful Votes: 5 out of 9 total.
Review Date: 2004-08-03
I just bought the book I needed out of the set. I needed to build a database that did not use any commercial package (this gives full access and no royalties). This book saved my bacon. I almost did not buy it when all I saw in it was math. But I was desperate and it paid off. Turns out you could not explain it any other way. This book goes way beyond binary, and bubble sorts. I use it primarily for balanced trees. I may try some thing more exotic later. I can not tell you about the other volumes but this one will defiantly pay for it's self.

The Encyclopedia of Algorithms
Helpful Votes: 5 out of 12 total.
Review Date: 2004-07-11
A previous review said: "This is a book about the science of algorithms. Algorithm's are either right or wrong."

Knuth uses the MIX programming language thoughout, and if you hope to learn programming by reading this book, you should look elsewhere. Someday we'll have 2^30 registers, and we will still be trying to make our programs work faster on this, as yet, uninvented architecture. But the fundamental concepts will remain the same, and people will still be reading Knuth to understand them.

A good reference for serious computer science students. Others should look at O'Reilly. They have some really good books on visual basic.

This is an encyclopedia of what is known about sorting and searching and what computers can do. It is nothing else.

Graduate students in computer science (especially those in theory, algorithms and the occasional compiler fan) will benefit. Hackers will probably not benefit from this book.

What's old is new again
Helpful Votes: 6 out of 6 total.
Review Date: 2006-11-04
First the basics: it's great, it provides wide-ranging and deep analysis, it shows many views and variants of each problem, and its bibliography is helpful, though not exhaustive. The historical notes, including sorts for drum storage, may seem quaint to modern readers. And sorting has been done, right? You just run a shell program or call a function, and tap into the best technology. Does it need to be done again?

Yes, if you're on the edge of technology, it does need to be done again, and again, and again. That's because technology keeps expanding, and violating old assumptions as it does. Memories got big enough that the million-record sort is now a yawn, where it used to be a journal article. But, at the same time, processor clocks got 100-1000x ahead of memory speeds. All of a sudden, those drum-based algorithms are worth another look, because yesteryear's drum:memory ratios are a lot like today's memory:cache ratios of size and speed - and who doesn't want a 100x speedup? Parallel processing is moving from the supercomputing elite into laptops, causing more tremors in the ground rules. GPU and reconfigurable computing also open whole new realms of pitfalls as well as opportunities.

Knuth points out that the analyses have beauty in themselves, for people with eyes to see it. His analyses also demonstrate techniques applicable way beyond the immediate discussion, too. Today, though, I have nasty problems in technologies that no one really knows how to handle very well. I have to go back and check all the assumptions again, since so many of them changed. If that's the kind of problem you have, too, then this is the place to start.

//wiredweird

Algorithms
Garbage Collection: Algorithms for Automatic Dynamic Memory Management
Published in Hardcover by Wiley (1996-09-17)
Authors: Richard Jones and Rafael D Lins
List price: $105.00
New price: $65.77
Used price: $58.58

Average review score:

An absolute must
Helpful Votes: 1 out of 1 total.
Review Date: 2007-01-18
I'd bought this book for personal reading. Even though I'm not directly into GC algos, I found this book amazingly lucid to read and follow. It has thorough coverage of all the GC algos I've heard of till date.

It goes about explaining the algos with a very broad level view, then goes a little deep, then deeper, so its very easy to follow, and the reader can decide to what extent (s)he wants to understand the algo.

A must have for anybody directly working on GC, or like me, people who develop high performance systems on GC aware languages/platforms. It can help you extract the most out of your platform.

pretty good book
Helpful Votes: 10 out of 16 total.
Review Date: 2001-01-08
I wanted to know about the generational algorithm that Java is now using. The book was pretty clear about how things work. I haven't read the whole book but what I've seen is very encouraging. The first few chapters are a broad overview and then you can dive into the particular algorithm you are interested in.

Excellent book
Helpful Votes: 19 out of 20 total.
Review Date: 2003-03-22
Garbage collection is a very interesting and complicated topic. To understand different garbage collection algorithms, one has to go through various research papers published over last 30 years or read the simplified descriptions presented in Java site and Bill Venners artima.com. This book does an excellent job in putting together all these algorithms in a logical order that gives us a chance to understand the different challenges sceintists and programming language authors faced and how the algorithms evolved over the time. The book starts with basic overview and history of commonly known algorithms: Reference counting, Mark and Sweep, and Copying algorithms. It then elaborates each of these algorithms, enumerates their pros and cons, and presents imporvements done by different researchers. After this, the book moves on to advanced algorithms like Generational algorithm and concurrent mark and sweep algorithm. I recommend this book to anyone interested in garbage collection. I haven't seen any other book on this topic. Even for programmers who mostly don't have to worry about GC as it is "automatically" done, this is a good book to understand and appreciate what goes on behind the scenes. Also, knowledge of the concepts in this book will be invaluable in performance tuning.

Category killer
Helpful Votes: 3 out of 3 total.
Review Date: 2007-05-04
This book is superb. It is thorough enough that there is little need for a practitioner to read the primary literature, even when contemplating sophisticated garbage collector designs. I remember being intimidated by garbage collection prior to reading this book, but now I am instead enthralled by garbage collection. Given the trend toward automatic memory management in programming languages, I think this book is an increasingly important part of the practicing programmer's library.

The first time I read the book, it seemed a bit repetitive, because the first two chapters provide the basic framework for the rest of the book. As a result, topics such as copying collection are discussed in at least two places. Upon reflection though, I think that there is no better way to organize the book, because there exists no straight path through all of the concepts the book covers.

Over the past eight years I have read portions of this book over and over as I've contemplated garbage collector designs for various software projects. I continue to be surprised at just how well this book meets my needs.

Great book
Helpful Votes: 6 out of 6 total.
Review Date: 2005-10-22
This is really a great book. It's really a must have for people who want to write their own modern virtual machine (like I).

This is simply the only book about Garbage Collection you can get. It's very complete: all GC Algorithmes are covered by this book in depth! All topics are properly introduced it has a nice layout, and offer snippets of pseudocode. It is not really a dry text.

If you want to read scientific papers about Garbage Collectors (like of ACM), it's recommended to read first this book, to get a proper introduction in this topic.

Algorithms
Introduction to the Design & Analysis of Algorithms
Published in Hardcover by Addison Wesley (2002-11-09)
Author: Anany V. Levitin
List price: $106.60
New price: $45.98
Used price: $24.00

Average review score:

Great Introduction to Algorithmic Design
Helpful Votes: 11 out of 12 total.
Review Date: 2005-05-08
I recently finished using this book for a course. I found it to be very well written and the presentation was excellent. Most books on algorithms are hard to read and overly mathematical. This book emphasizes more the textual explanation of algorithms for practical applications and not as much on theoretical proofs etc. The exercises at the end of the chapters strongly reinforce the contents and insightful hints to every exercise are given at the end of the book. I thoroughly enjoyed using this book and found it challenging. Other books I used for reference such as the MIT classic Introduction to Algorithms was also useful but much more difficult to understand initially.

Great introductory text!
Helpful Votes: 12 out of 13 total.
Review Date: 2006-03-10
For those of you who've always wanted to throw the Cormen text out the window rejoice you finally can! This book is an excellent introduction to algorithms. Though not as thorough as the Cormen text it's orders of magnitude more readable!

A survey of algorithm techniques
Helpful Votes: 2 out of 2 total.
Review Date: 2007-10-28
This was my textbook for my algorithms class at UW-Madison.
I like it better than Cormen's book, (introduction to algorithms) I think it's more readable and easy to follow.

A couple of caveats:
1.) This book is more of a survey. It does a deep-dive of some algorithms, but a lot of them only get a high-level description. If you are interested, you will have to look elsewhere for details, etc.

2.) The exercises are very well-written, and very interesting, some of them have been interview questions that I have encountered. The thing is, there is no answer key, and the hints section is not very useful at times.

Still, this book opened my eyes to the beauty of algorithms and math, and the elegance of solutions that are possible for "hard" problems.
After you read this book, you will have an idea of what is possible and it will give you enough ammunition, enthusiasm, and background for digging deeper.
A great collection to pair with is Sedgewick's collection on algorithms, Bundle of Algorithms in Java, Third Edition (Parts 1-5): Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms, Third Edition which may fill in some of the detail that this book may lack.

Fantastic intro book
Helpful Votes: 3 out of 3 total.
Review Date: 2006-09-26
Even though this book is only a few years old, it seems like a well-worn classic. That is not to say that it is outdated and irrelevant; it is exactly the opposite! While my knowledge of algorithms textbooks isn't encyclopedic, I can say that this book was way ahead of the curve in it's layout. Before it, most books presented a bunch of algorithms with some loose affiliations such as being search algorithms or dealing with graphs. This book groups algorithms into major themes and makes it much easier to learn the fundamentals of algorithm design. There have been a new set of algorithms textbooks coming out as late (Kleinberg and Tardos, Dasgupta et al, etc) that have the same approach as this book because it works so well. Don't miss out!

One of the better introductions
Helpful Votes: 5 out of 7 total.
Review Date: 2005-03-12
This book presents the field of algorithm analysis from a different perspective. This book attempts to provide you with enough foundation to not only pick common sorting, searching, etc., algorithms for a problem, but shows you how to design new algorithms if need be. The book is an introduction, so keep that in mind. But the foundation it paves should last you a lifetime.

Algorithms
Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond (Adaptive Computation and Machine Learning)
Published in Hardcover by The MIT Press (2001-12-15)
Authors: Bernhard Schlkopf and Alexander J. Smola
List price: $75.00
New price: $53.09
Used price: $50.00

Average review score:

best book of kernel methods
Helpful Votes: 10 out of 13 total.
Review Date: 2004-07-10
It is the best book on kernel methods. It covers a wide range of subjects.

The best thing is that after finishing one or two basic chapters, you can read the rest of the book in any order; most chapters are almost independent to each other. At the beginning of a chapter, the authors list the prerequistites, so a reader knows whether he will be able to understand the chapter.

For now the book still reflects the state of art. But it is a fast changing field. I hope the authors will update the book in the future.

Complete SVM Guide
Helpful Votes: 3 out of 3 total.
Review Date: 2008-02-21
Excellent theory on SVMs and VC dimensionality. However, I found the chapters on optimization a bit terse. Otherwise, an essential reference for those interested in using SVMs in classification and regression.

machine learning via support vector machines and kernels
Helpful Votes: 3 out of 3 total.
Review Date: 2008-01-23
The authors are young researchers who did their Ph.D. research in this rapidly developing branch of pattern recognition. Because they are young and are at the state of the art in the filed the book has sevral advantages and disadvantages and what I see as a disadvantage someone else might view as an advantage. Anyway here is my view.
Advantage 1: Pattern recognition is a field of many disciplines. It has been studied by statisticians, mathematician, probabilists and engineering and people that call themselves computer scientists specializing in artificial intelligence. The field is old and has a long history but each discipline has developed their own jargon and many times the wheel has been reinvented. The advantage of this book is that these young scientists don't see that awful history. They have learned and mastered their subject in a basically engineering jargon but they include many concepts from statistics and statistical learning theory that are not common to engineering texts. This includes such topics as robust regression, ridge regression and spline estimation. Much of the classical statistical literature is cited. The book contains over 600 references including much of the authors own work.
Disadvantage 1: Because they are young they miss some of the important historical literature and key texts. I found it a little disappointing that the bootstrap which is a statistical tool that has played a major role in discriminant analysis (particularly in the estimation of classification error rates) was completely overlooked. Also although many important texts on pattern recognition, machine learning and discriminant analysis are cited the fine text by McLachlan is overlooked as is the recent relevant text by Hastie, Tibshirani and Friedman.

Advantage 2: This book highlights the work of Vapnik and Chervonenkis and provides nice concise descriptions that one can easily refer to when needed. The mathematics is deep and includes reproducing kernel Hilbert space and many important properties from functional analysis and statistical theory.

Disadvantage 2: The authors are more experienced at writing professional papers than at writing text books. Consequently the book does not flow well and the authors freely admit in their preface that it is best not to read the book in sequential order but rather to take the suggestions in the preface that differ based on the readers background and interest.

Having said all this, for someone like me, who is very knowledgeable about statistical pattern recognition this is a great text for getting me up to speed on an exciting new area that I know very little about. I became curious about it when I started reading Vapnik recently.

I am hoping that a careful reading of this book will give me an intuition about why this approach that incorporates kernel methods can be a powerful tool in pattern recognition and classification.

This book should be a useful reference for anyone interested in this research area. It could be used in an engineering or statistics course in pattern recognition at either the undergraduate or graduate levels depending on what material is covered.

In a recent communication with Bernhard Scholkopf I learned that his book was sent for publication before the Hastie et al. book went to press. So that is the only reason it wasn't referenced. I think that point is worth my mentioning in an editing of this review. Also on reflection I do not think the disadvantages are so great as to remove a star. So it is 5 stars for them.

I can only hope that they will reference the work of McLachlan and Hastie et al. in their future books and research on this subject.

Excellent overview of the theory of kernel-based methods
Helpful Votes: 4 out of 4 total.
Review Date: 2007-06-21
This book is at the right level if you are already strong in Machine Learning theory. (e.g. Tom Mitchell's "Machine Learning").

Note that it is already getting somewhat dated. It for example includes little information on kernels for discreate structured input, such as trees and graphs.

In depth review of kernel methods in machine learning
Helpful Votes: 6 out of 7 total.
Review Date: 2005-10-24
Great book, but a word of caution, it is not for the novice.
Book assumes a lot of background in functional analysis and
probability. True, it has extensive appendixes but they are
short-handing the relevant materials only. However, having said
that, this is a book worth struggling with even if you have not
yet got the intuitions in the above mentioned disciplines.

It is worthwhile (at least as I can tell) to read the book
skipping the tool chapters (2-6) going back to them when one has
a point where those are needed. I found that to be much easier
as it provides a concrete use of the methods putting them
in context.

Algorithms
Operations Research Applications and Algorithms
Published in Hardcover by Wadsworth Publishing Company (1997-01-13)
Author: Wayne L. Winston
List price: $126.95
Used price: $41.75

Average review score:

THE BEST on Operations Research (Deserves 6 stars)
Helpful Votes: 10 out of 10 total.
Review Date: 2005-06-10
I think this book is the best up to date reference on Operations Research. The book is very well written, very didactic and addresses mainly the practical use of OR. That is, the book isnt so good for algorithm details but it is superb on modeling, interpretation and examples.

From Deterministic to Stochastic
Helpful Votes: 2 out of 2 total.
Review Date: 2002-08-27
This is one of the excellent industrial engineering books. From deterministic and simple linear programming to stochastic systems such as queueing models or dynamic programming, you may read and "learn" lots of things about OR. However, for stochastic cases you will need extra help for its matematics. But if you want to learn something about industrial engineering or something related with it, that is the book you must buy.

Another great text by Dr. Winston
Helpful Votes: 3 out of 9 total.
Review Date: 2001-03-18
A wonderful compendium of Ops algorythms. It has everything from linear programming to queing theory.

Good writing style
Helpful Votes: 4 out of 5 total.
Review Date: 2003-04-15
I am in my first semester of an MBA program. The required text for my OR/MS class (An Introduction to Management Science, 10th ed., by Anderson, Sweeney, Williams) left something to be desired. I work with the SAS programming language, and happened to be discussing the SAS/OR product with a SAS technical support rep. He recommended this Winston text. I think it explains concepts much better than my Anderson text and has helped me a lot in my OR/MS class.

A great book for undergraduate engineering students
Helpful Votes: 4 out of 5 total.
Review Date: 2001-12-27
I have used this book for five years in my Operation Research classes. Its emphasis is in the mathematical modeling. The explanations are complete and clean. But, the exercises are the best part: a lot of examples and modeling exercises. A very good book for engineering students.

Algorithms
Approximation Algorithms
Published in Kindle Edition by Springer (2004-03-22)
Author: Vijay V. Vazirani
List price: $49.95
New price: $35.96

Average review score:

Short and Sweet
Helpful Votes: 2 out of 3 total.
Review Date: 2006-03-12
This is a fanastic topics book in approximation algorithms. The problems and proofs are challenging and concise, but written in a very accessible manner. It is a great reference book, and also a convenient place to grab a lecture from if you need something to fill our a course. I have found it extremely useful, and even fun to read. I highly reccomend it for any person interested in theoretical computer science.

a wide variety of topics
Helpful Votes: 3 out of 6 total.
Review Date: 2006-11-07
Vazirani's book seems well suited for a computer science researcher who has had a rigorous background in pure maths. The level of difficulty can be quite advanced. Also, it is not the sort of book that gives algorithm examples in an actual programming language. Not that this should be a handicap to a skilled reader. The algorithms are usually described in high level pseudocode. You have to manually instantiate these in the language of your preference.

The 30 chapters span a wide variety of computational topics. Some are simpler than others to understand. Like the chapter on finding the shortest vector from the integer lattice made from a set of linearly independent vectors. That requires only a year or so of introductory linear algebra.

There are exercises for each chapter. Some exercises are formidable. Essentially like little research problems in their own right. Another plus for the book.

Only for graduate level - very good
Helpful Votes: 3 out of 4 total.
Review Date: 2005-11-22
Very good, it is easy to read the book if you have a good level
of knowledge and the experience to think some details in the
proofs of the theorems.
I think it is a very good book for a graduate student.

Much needed desktop reference for anyone working with algorithms, networking protocols, optimization
Helpful Votes: 5 out of 5 total.
Review Date: 2006-03-09
I have been looking for books related to solving NP-complete and NP-hard problems approximately. There is another book by Hochbaum and I have that too. Unfortunately, that book is more of a research oriented book as it is written by several researchers. It's like reading several research papers within two hard covers. This means that one needs to have a sort of intermediate level of experience with approximation algorithms.

For a beginner, one would expect a book that starts from ground-up and that has been written as a textbook rather than as a set of research papers. The book by Dr. Vazirani, is the only book that is written by one author with a step-by-step evolution of concepts and ideas related to approximation algorithms.

Very nice introduction
Helpful Votes: 6 out of 6 total.
Review Date: 2006-05-20
This is a quite nice book by an author who is well-known in the field. The book is not thematic, instead it presents certain problems in each chapter along with the main approximation algorithms and correctness proofs. Yet, each new concept is well introduced with the problems. For instance, the author presents LP-based techniques on the same problem (set cover) in the second part of the book. This makes it quite easy to compare and understand different techniques. The last part of the book is a little bit advanced compared to the first two parts which uses combinatorial or LP-based analysis of the algorithms. The presentation of the PCP theorem- arguably the deepest theorem of computer science- and its consequences are also in the last part.

A warning though: The book is quite terse at times, which enforces a dense reading. This may not be suitable for an undergradute study. My only complaint is that the PCP theorem might well be introduced with a little more intution.

Overall, I rate this book as excellent. If you are interested in algorithms, you should definitely buy it. Also, buy the "Complexity and Approximation" by Ausiello, Crescenzi and others. They provide a more comprehensive and thematic treatment. It also has an excellent bibliography and list of NP-hard problems. These two will make a great couple. The book edited by Hochbaum (Approximation Algorithms for NP-hard problems) on the other hand presents detailed information on the algorithms.

Algorithms
The Art of Computer Programming, Volume 4, Fascicle 2: Generating All Tuples and Permutations (Art of Computer Programming)
Published in Paperback by Addison-Wesley Professional (2005-02-24)
Author: Donald E. Knuth
List price: $19.99
New price: $12.93
Used price: $11.95

Average review score:

Computer Science Classic
Helpful Votes: 0 out of 0 total.
Review Date: 2008-06-02
Three classic volumes from Donald Knuth. I have the 3rd edition. Once your get pass understanding MIX ( MMIX, 4th edition), it is a great technical read. Bring so much to Computer Science. I used them in school. I use them today.

Brief but worthwhile
Helpful Votes: 2 out of 3 total.
Review Date: 2007-08-12
Combinatorial problems arise in a wide range of contexts. Among combinatorial problems, generation of all distinct sets of some size (tuples) or all rearrangements of the objects (permutations) occur commonly, often as the first step in a larger calculation. Knuth addresses some important classes of such problems in this book.

Even "all possible permutations" leaves a wide range of choices open. For example, should the list be in alphabetical order? Should it minimize the number of differences between consecutive elements? Many other constraints can be imposed as well, even esthetic ones! "Ringing the changes" on a carillon is one such combinatorial problem, with a long history and criteria for beauty all its own. However choices are made, the next step is to specify a way of creating the list. This can have constraints of its own. For example, it may be neccesary to create the next arrangement in the sequence knowing only the current element of the sequence. Knuth offers different algorithms for meeting different sets of constraints. If none of them match your needs, then the references will help you find something that does, or the discussion and exercises will help you develop one of your own.

Although useful, this book is very brief. 144 pages isn't a lot. Take away 45 pages just for solutions to exercises, then more for index and exercises, and the text is surprisingly brief. What's left carries its weight, though. It's a valuable addition to almost programmer's library.

-- wiredweird

Very nice book
Helpful Votes: 2 out of 3 total.
Review Date: 2007-02-01
Am studying Gray codes for graduate paper. This was an excellent resource. Fun and interesting read.

a solid compendium of challenging problems
Helpful Votes: 27 out of 34 total.
Review Date: 2005-04-25
This preliminary excerpt from Knuth's Volume 4 will please all the fans of his seminal first three volumes. The didactic style is the same. So too is the very distinctive Tex typeface. (You know that he invented Tex, don't you?)

Of course, there are the problem sets. This little book has two sections. In each are 112 problems. Strewth! Knuth thoughtfully gives an estimate next to each of how long it will take you to solve it. Those estimates probably refer to someone of his calibre. I've attempted most of the problems in his earlier volumes and could typically only get within a factor of two of the time estimate. And this was only when I could actually solve a problem.

The book addresses a gap in the literature of computer science. Research papers in journals or books of conference proceedings do not usually present you with problems. While introductory texts do, but those are simple. Very difficult to find a solid compendium of challenging problems.

Such is the attraction of this book to me and perhaps to you. The potential readership is exclusive and self selecting. The only drawback is the wait for the rest of Volume 4.

Combinatorial Programming Simplified!
Helpful Votes: 6 out of 6 total.
Review Date: 2006-10-11
First, I would like to say this is the first Donald Knuth book I have read, only because every programmer respects TAOCP so much that they say it is too hard for the hobby programmer. I have a small background in Computer Science, and some mid-level Math; yet Knuth walks you through some of the most exciting Computer Science problems you could ever dream of with ease! I came to find this book perfect, mostly because my favorite Programming problem is the Traveling Salesman, this book as well as fasicles 3 and 4, are the perfect reference to find great ways to venture into the unsolved TSP Algorithm, and the feared Hamilitonian Cycle.

Reading about gray generation I immediatly found so much more value to this book than I ever expected. As well, the book then jumps into ways to use loopless generation( which blew my mind! ). Then the best part comes in the second half of the book, "Generating All Permutations" First it starts with a brute force method for achieving all permutations, then Algorithm L to G(my favorite algorithm in the book...) is the largest hurtle in the book; I actually bought the whole TAoCP volumes so I could get through this part because it goes over permutation pre-multiplication ( Knuth has a better way of defining this ), although the idea is simple, an effective way to implement and explore pre-multiplication I found to be extremely important and should not be over looked. Then after that the diffictulty goes to equal as the first half.

In summary this book is deffinitly worth the wait, and it helps a person, no matter how experienced, to explore new ways to venture out of the straight and narrow, and into an arena of problems that few dare to venture.

Algorithms
Foundations of Genetic Programming
Published in Hardcover by Springer (2002-03-22)
Authors: William B. Langdon and Riccardo Poli
List price: $49.95
New price: $37.76
Used price: $32.50

Average review score:

Good introduction to GP theory
Helpful Votes: 13 out of 25 total.
Review Date: 2002-08-25
Langdon and Poli do a fantastic job of summarizing the major theoretical results of genetic programming. The first chapter gives a quick and clear introduction to genetic programming. They continue with a comprehensive summary of previous research in schema theory, and then they present their exciting theoretical results. Their description of an exact schema theorem (microscopic and macroscopic) for GP is a bit dense, but they provide a good discussion of how to interpret these results. As a whole, this book is generally easy to follow, even with little prior exposure to genetic programming. Of course, this book is not intended to be a general introduction to genetic programming (one of John Koza's books would be more appropriate), but instead it is intended to present some of the theoretical foundations of the field.

A survey of what was new in 2002
Helpful Votes: 17 out of 18 total.
Review Date: 2004-04-09
This book was published in 2002 to provide a survey of the direction research had taken in the field of Genetic Programming. There is an explanation of what genetic programming is and how it is different from genetic algorithms in chapter 1(GP is a "generalization" of GA). Chapter 2 discusses the problems with the fitness landscape. Chapter 3 - 6 discusses various schema theory approaches and proofs. Chapter 6 has a great explanation of effective fitness.

There are numerous theorems and proofs in the book. There are informative examples of the max problem and the artificial ant (Santa Fe Trail) problems. Chapter 11 is about how GP convergences are a tricky matter and how subtrees can hide interesting incidences of convergence.

This is not an introductory text, it is intended for graduate level or higher readers. There is much theoretical work here and a limited background in this area will result in limited understanding of the material.

Exciting New Developments in EC Theory
Helpful Votes: 19 out of 30 total.
Review Date: 2002-09-20
Langdon and Poli are both internationally recognized experts in Evolutionary Computation (EC) and, in particular, Genetic Programming. They have both contributed extensively to the theoretical "foundations" of GP and hence may speak with no small degree of authority about GP theory. As a physicist working in EC I like the balance that the authors have struck between mathematical rigor and understandable intuition. The book is not as rigorous as Vose's well known GA book. However, it is much easier to read. Neither does it take the "engineering" rule of thumb approach, as does Goldberg's book for instance. It covers very well recent important developments in the theory of GP and in that sense makes very good reading for anyone with a serious interest in EC theory. It is not for the novice, even though technically it is not a difficult book. It is really a research monograph and not a textbook. In that sense the title is a little bit misplaced. With the exciting direction the authors are pointing in I believe that in five years time another book of the same title should truly be able to lay out what are the foundations of GP theory and also show the theoretical unity that exists between the different branches of EC.

specialised maths treatment of GP
Helpful Votes: 8 out of 9 total.
Review Date: 2006-04-03
This book can be usefully read along with a companion text by the same publisher - "Introduction to Evolutionary Computing". Langdon and Poli provide a focused look, on the specifics of genetic programming. The maths treatment here is significantly more involved than the other book.

Foundations starts with what I suppose in this field is an obligatory section on the concept of a fitness landscape. A very useful metaphor of what you'll be attempting to do, as a researcher. However, the authors carefully point out the limitations of this idea. Notably that some spaces might have no natural metric.

The book then rapidly goes into the ideas of GP schemas and hyperschemas. Accompanied by a nice theoretical analysis of key performance goals like the rate of convergence in the GP search space. A solid offering to the GP researcher.

The modern revolution
Helpful Votes: 9 out of 14 total.
Review Date: 2003-02-18
Currently working as an undergraduate student in Ann Arbor, Michigan as a Computer Science major I'm an intrigued by Genetic Programming alongside all motives of this in-depth field. I found this book to be a modest account of what is new and theoretical within this field. Expressing advanced features with a short introduction; this book is profoundly for somebody with somewhat of a background. A recommended start in the computer evolutionary field is:
An Introduction to Genetic Algorithms [1996], by Melanie Mitchell.

Algorithms
Ideals, Varieties, and Algorithms: An Introduction to Computational Algebraic Geometry and Commutative Algebra
Published in Kindle Edition by Springer (2006-02-24)
Authors: David Cox, John Little, and Donal O'Shea
List price: $59.95
New price: $47.96

Average review score:

Good book
Helpful Votes: 11 out of 11 total.
Review Date: 2001-05-26
I don't have the second edition of this book but did read the first, and the authors do a fine job of introducing the reader to the computational side of algebraic geometry. I will forego a chapter by chapter review therefore, but no doubt the second edition (which I do not own) is as well-written as the first. I would recommend it to anyone interested in the many applications of algebraic geometry and to those who need to understand how to compute things in algebraic geometry. The good thing about this book is that it gives a concrete flavor to a highly abstract subject. Algebraic geometry, through its applications to coding theory, cryptography, and computer graphics, is fast becoming the subject to learn. It is no longer just an esoteric, high-brow subject but one that is taking on major importance in the information age. Even without applications though it is a fascinating subject, and readers will get a taste of this in this book.

Symbolic computation
Helpful Votes: 6 out of 6 total.
Review Date: 2003-08-29
This book explains and illustrates the algorithms used by symbolic math packages such as Mathematica, Maple, CoCoA, MatLab, MuPAD,... to solve problems involving polynomials in many variables, and along the way teaches the elements of real algebraic geometry-- most mathematics texts concentrate on the complex-variable version. It is not just for undergraduates; electrical engineers, for instance, should see it. Lots of pictures!

The best book on the topic
Helpful Votes: 8 out of 9 total.
Review Date: 2001-01-26
I learned the basics of Groebner bases from this book and its the best introductory book on this topic. Authors have explained all concepts with the help of examples which makes it readable for people from other fields also. It also talks about applications of Groebner bases to other fields. The book gives lot of exercises which help in understanding the contents more. I recommend that if you wish to learn Algebraic Geometry and Groebner bases then this is the book to start with.

Easiest introduction to Algebraic Geometry
Helpful Votes: 9 out of 10 total.
Review Date: 2003-04-23
This is the easiest introduction to algebraic geometry and commutative algebra, the authors had done a great job in writing a book that assume very little from the readers. To learn some algebraic geometry, you can either start with this book, or you can spend a year to read a lot of background materials in algebra and then go to a Graduate Text like Harris' book. Of course, if you want to be an expert in algebra, you eventually need a lot of background, what this book can help you is to offer you a quick start, much quicker than you would ever imagine.

Straightforward and lucidly written
Helpful Votes: 9 out of 9 total.
Review Date: 2002-04-09
Having just finished using this text in the course of an undergraduate seminar, I can attest to the fact that the authors' style is outstanding - they are able to synthesize an enormous amount of material in this volume and present it in a manner that is highly accessible to almost all students of mathematics. The presentation of important theorems (for example, Hilbert's Nullstellensatz and Basis Theorem) along with just the right amount of copncrete examples makes for a book of superb quality. All-around, I highly recommend this volume to anyone who has an interest in learning about Algebraic Geometry.

Algorithms
Algorithms
Published in Hardcover by Addison-Wesley Pub (Sd) (1988-04)
Author: Robert Sedgewick
List price: $45.95
New price: $15.00
Used price: $0.57

Average review score:

A classic when looking for information about algorithms
Helpful Votes: 2 out of 3 total.
Review Date: 2003-10-26
When having to solve problems regarding algorithms, this book is one of the frequently used books. It shows besides the interesting details also the larger overview, which certainly adds to your better understanding.

Good introductory text
Helpful Votes: 4 out of 4 total.
Review Date: 2004-10-14
I found this book at a university book shop back when I was 14 years old and bought it to learn more about certain algorithms. The reason I bought it was because it looked like it would provide very concrete advice on how to achieve an implementation while not requiring more advanced mathematics than I knew at the time.

Now, many years later I have to say that I can't think of any algorithm book I've come across that manages to balance theory and concrete solutions so well; and I own quite a few books on algorithms. (Some might object to the fact that the book uses Pascal as the implementation language, but I think I've seen this book tailored for other languages too).

Also, for a general book on algorithms, Sedgewick managed to pick a very good mix of topics to cover. According to a friend of mine (whom happens to know Sedgewick personally), the book just represents a cross-section of what Sedgewick himself was interested in.

This book was very useful to me when I was a teenager starting to understand bread and butter algorithms, and it continues to be a good reference still to this day. I would recommend you buy this book if you need a good book on fundamental algorithms.

(Also, the typography is very sober and clean, and the illustrations to most of the problems are very clear)

Excellent text on basic algorithms - too bad it's Pascal
Helpful Votes: 4 out of 5 total.
Review Date: 1999-09-30
This text covers the most useful material presented in Knuth's seminal series, but is much more readable in Pascal than in Knuth's notation, which was based on programming language concepts of the late 60's.

The example code is actually run by the typesetting system to generate the graphs showing the operation or efficiency of the algorithm, so you have a high confidence factor in the example code. Too bad it's in Pascal -- which is probably why this book is out of print.

I was very surprised at the low ratings awarded by reviewers to the paperback edition of Sedgewick's "Algorithms in C" -- yet there were good reviews of the hardcover edition. Evidently the example C code didn't meet the high standards of the Pascal version.

My favorite introduction to algorithms
Helpful Votes: 6 out of 6 total.
Review Date: 1997-08-09
Sedgewick provides a very clear and intuitive exposition of the essence of many algorithms.

The book covers a breadth of topics, from sorting and searching, to computational geometry and mathematical algorithms. It is an extremely well-written book. Each algorithm has been carefully implemented in Pascal (you may also want to have a look at the editions of the book for C++ and other languages). It is an excellent book, both for practitioners and programmers, as well as an introduction to the theory of algorithms!
Highly recommended!

Can Programs Teach Algorithms?
Helpful Votes: 7 out of 8 total.
Review Date: 2001-01-05
This book presents an interesting challenge. It talks about algorithms yet it does not present algorithms, nor does it define algorithm as anything more than a "problem-solving method suitable for implementation as computer programs[p.4]." Instead, it exhibits programs which are the implementations of algorithms and discusses them as if the algorithm is apparent. The reader is left with the challenge of learning to discriminate between what is essential about an algorithm, and how to preserve that in an implementation, versus what is inessential to the algorithm and introduced on account of the implementation and the use of particular programming tools.

I am concerned that this approach, while well-motivated, is not successful. My evidence is in the criticisms of this and later editions that dwell on the choice of programming language and on stylistic matters in the use of the chosen language. This places too much emphasis on code. Although code rules these days, I remain unconvinced that this simplification is a good thing. For me, one of the great insights in development of software is identification of layers of abstraction for conquering the organization of complex application programs. Separating design, algorithm and implementation is a critical first step toward that mastery.

Meanwhile, "Algorithms" serves up a handy set of recipes for a variety of basic computing situations. The 45 sections cover fundamental methods of widespread application in computing and software development. The presentations are straightforward and illuminating. The compilation bears re-examination every time one sits down to identify key methods for a new application.

I recommend supplementing this material with the practical methods of Kernighan and Plauger's "Software Tools" and the insightful explorations of Bentley's "Programming Pearls." Most of all I encourage development of enough sense of the material in Donald Knuth's "Art of Computer Programming" to be able to read the discussions of algorithms and problems there, even if you never use the particular implementations.


Books-Under-Review-->Computers-->Algorithms-->2
Related Subjects: Compression Speech Recognition Computational Algebra Pseudorandom Numbers Animated Sorting and Searching Complexity Publications
More Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250