|
|||||||||||||||||||||||||||||||||||
|
15 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
34 of 36 people found the following review helpful:
5.0 out of 5 stars
Exceptional writing, elegant code, great examples,
By A Customer
This review is from: Mastering Algorithms with C (Paperback)
Mastering Algorithms in C is the most readable algorithms book I've ever encountered. Not only does the author have a tremendous command of English, he has a writing style that is simply a pleasure to read. The author also deserves mention as having one of the cleanest coding styles I've come across. Having taught and worked with computers for over 15 years, I've seen many. It is no easy feat to present the subject of algorithms using real C code in a consistently elegant manner. This book does it wonderfully. Another feature of the book that works exceptionally well is its detailed presentation of interesting (and I emphasize interesting) real-world examples of how various data structures and algorithms in the book are actually applied. I'm a computer science type, so I especially enjoyed the examples about virtual memory managers, lexical analyzers, and packet-switching over the Internet. But the book includes many other examples of more general interest. Students will find all of the examples particularly insightful. Although most of the code in the book does make use of many of the more advanced features of C, an inordinate number of comments have been included which should help even the feeblest of programmer carry on. In addition, there are two great chapters on pointers and recursion. Exceptional writing, elegant code, great examples, not to mention a lot of entertainment value -- O'Reilly has another winner here. I highly recommend it.
29 of 32 people found the following review helpful:
5.0 out of 5 stars
Fantastic addition to any personal libriuary.,
This review is from: Mastering Algorithms with C (Paperback)
Just what I needed. One of those books I had to ring in sick to work, sit at home and read.Writing commercial c applications for the Internet, I was looking for a book to give me assistence with my coding. What I found was something which caused me to go back and rewrite a lot of my work! Starting by explaining exactly how memory is managed when calling fuctions, going on to explain, in english, how many commonly used stuctures in c work. Everything from hash tables to encryption. A good read for anybody interested in how code works. Essential for anybody wishing to write quality programs. The best bit. This comes with c libruaries uncompiled with examples, fully explained in the text. Many of which I have used. Reliable, easy to implement and dramatically increase the quality of my code. Want a easy to use binary search tree? A few minutes work and it's there. I also emaild the author, who was more than happy to help with a question. Personally speaking, one of the best computer books I have ever bought.
41 of 47 people found the following review helpful:
4.0 out of 5 stars
Helpful book on algorithms using C,
By Dr. Lee D. Carlson (Baltimore, Maryland USA) - See all my reviews (VINE VOICE) (HALL OF FAME REVIEWER) (REAL NAME)
This review is from: Mastering Algorithms with C (Paperback)
C programming is still with us because of its high performance ability and this book outlines several algorithms using the language. It begins with a classification of algorithms as randomized, divide-and-conquer, dynamic programming, greedy and approximation. Some algorithms the author states defy classiification but he does not give examples. Pointers are discussed in the next chapter, and covers how to avoid dangling pointers, memory allocation, pointers to data structures, function parameters, double pointers, and generic and function pointers. The chapter is clearly written and diagrams are used frequently to illustrate the uses and properties of pointers. The author in particular gives an excellent explanation of how C can simulate call-by-reference parameter passing. This capability in C can be a source of trouble to the newcomer to C. The author does not however discuss triple pointers in this chapter, in spite of their great utility in computational geometry and computational radiology. Void pointers and casting are discussed in detail though, and the author does a good job. Only a cursory discussion of function pointers is given; I would have preferred many more examples to be given. Recursion and tail-recursion are discussed in Chapter 3, with the factorial function used to illustrate the differences. Computational complexity and the O-notation are covered in the next chapter, with the treatment pretty sparse but clear. Linked lists, extremely useful in all areas of engineering and science, are discussed effectively in Chapter 5. Eleven linked list macross, thirteen doubly linked list macros, and eight circular list macros are discussed and the complexity of each given. Virtual memory and paging are given as examples of applications of linked lists. The author moves on to stacks in the next chapter with several stack macros outlined. FIFO queues are discussed but in view of their importance in network modeling not enough examples are given. A very interesting overview of how to implement sets as a data type in C is given in Chapter 7. I was not aware that such a construction could be done effectively in C so this chapter was of particular interest to me. All of the usual set operations are implemented using a number of diffrent macros. A clever set covering algorithm is given at the end of the chapter. Hashing and chain hash tables as arrays of linked lists are outlined in the next chapter. Hash functions are used heavily in such areas as cryptography and the author does a fine job of outlining their implementation. After a good discussion of trees, heaps, priority queues, and graphs, the author begins in the third part of the book with the actual implementationof many useful algorithms. The chapter on numerical methods could be more in depth because of its immmense importance and because C has been one of the best performers for the the time intensive calculations in this area. Huffman encoding and other compression algorithms are also treated with some detail. Several macros for bit operations are given and the ones discussed are helpful for the next chapter on encryption algorithms. The DES and RSA algorithms are treated in this chapter, but unfortunately elliptic curve encryption algorithms are not. The book ends with a fairly good overview of graph algorithms and algorithms in computatational geometry. This is really a pretty good book and gives a good overview of some very important algorithms, and all within a little over 500 pages. The only major omission was the lack of exercises/problems at the end of each chapter.
17 of 20 people found the following review helpful:
5.0 out of 5 stars
Stuff I have never seen before!,
This review is from: Mastering Algorithms with C (Paperback)
I have read a half-dozen or more books pertaining to C Algorithms, and most of them were the same. This touched on the usual stuff - sorting, hashing, linked lists, etc. But it touched on these subjects in ways that are so general purpose that the sample code can be used with little modification! It also adds a couple of new things such as Set algorithms and an explaination of how to pass functions as paramenters to functions. There could have been a few more examples, and he could have explained some of his material in plain english, instead of engineerese. Overall the book is excellent, and I will refer to it often.
45 of 58 people found the following review helpful:
2.0 out of 5 stars
A small collection of over-commented code,
By Cris Luengo (Uppsala, Sweden) - See all my reviews
This review is from: Mastering Algorithms with C (Paperback)
I hoped to find a broad overview of existing algorithms. Instead I got a small collection of over-commented code. It is true that this book contains some algorithms not discussed in similar books, but it also doesn't contain many algorithms that I consider a part of a programmer's standard toolbox. For example, there is no mention of string matching and searching. The author discusses an implementation of the LZ77 compression algorithm, but doesn't even give a hint as to the workings of related (better) algorithms. There is an implementation of the RSA public key encription, but no mention on how the private encription/public decription counterpart works. The discussion on hash tables only covers hash tables with linked lists, and not the easier to implement double hashing. And I could go on and on.But the most annoying thing about the book is the author's commenting style, which render the code itself unreadable. Almost every instruction is commented by a 5-line high, 80-column wide comment block, exactly in the way that Rob Pike makes fun of in his "Notes on Programming in C" article, where he says: "Don't laugh now, wait until you see it in real life." In short, I would only recommend this book to people wanting to learn some basic algorithms, but already have a strong sense of correct programming style.
11 of 14 people found the following review helpful:
5.0 out of 5 stars
I don't know what the first guy is talking about, but...,
By A Customer
This review is from: Mastering Algorithms with C (Paperback)
I loved this book. Saved me so much time and effort when I had to delve back into C after a two year hiatus. The code works, and works well! Good discussion of the whys and wherefores of the various algorithms
3 of 4 people found the following review helpful:
4.0 out of 5 stars
Considering 'Algorithms with C',
By Kim M. (Sweden) - See all my reviews
This review is from: Mastering Algorithms with C (Paperback)
Things I didn't know when I ordered this book was how structured the book was. It's easy to comprehend and doesn't contain too much unnecessary information. Furthermore, what I also managed to miss was the disc which was included, and this contains more in-depth code, which allows one to check a whole program instead of only a part.
It is definitely a good decision to start with buying this book if you're studying Algorithms with C, since this will truly help and support you on your way.
7 of 10 people found the following review helpful:
4.0 out of 5 stars
Simply a great book,
By Ori Cohen (Ramat-Gan Israel) - See all my reviews
This review is from: Mastering Algorithms with C (Paperback)
This is truly a wonderful book, consisting recommendations of implementation on most of the basic and common algorithms.The book is shaped to be useful both for developers with little experience in C programming and also for professionals wanting to learn some more, and maybe make their programs run faster and with greater stability. Possibly more than anything this book taught me how to get much better memory consumption and smaller code using small yet very intelegently designed functions. I believe that reading and tryng some of the many examples in this book for your programming needs, would change the way you think in programming, in a way that you would automatically make much more efficiant programs no matter if you write them in C, in C++, in Java, in Perl or any such language for that matter. : )
13 of 19 people found the following review helpful:
3.0 out of 5 stars
good, concise algorithm book ruined by comment,
By
This review is from: Mastering Algorithms with C (Paperback)
compare to most algorithm/data structure books out there, this book is not as complete as those, but it's much easier to read, and diagrams in this book is well drawn and much eaiser to follow. Why would I only give it 3 stars? One thing really ruined this book - obviously the publisher/editor/author try to increase the total page number by putting ridiculously big comment block in sample code(single line comments takes about 5 lines, all surrounded by '*' and spaces) This made the sample code difficult to read, imagine a 5 line function has to be printed in 2 or 3 pages.
5 of 11 people found the following review helpful:
4.0 out of 5 stars
pretty concise and covers enough ground,
By
Amazon Verified Purchase(What's this?)
This review is from: Mastering Algorithms with C (Paperback)
Sure, we all have learnt algorithms back in school. We know the fundamentals, we can talk about them, no sweat. But when it comes the time to actually write out an algorithm in C, we all struggle like George W writing SAT. That's why an algorithm book with real useable sample codes is very useful. O'Reilly has a good reputation for pumping out reference books, but there are, inevitably, hits and misses in the series. This volume is a hit. It covers most frequently used everyday algorithms without going into some obscure and generally useless NP-class problems. Full example codes are given on a floopy for easy porting.
|
|
Most Helpful First | Newest First
|
|
Mastering Algorithms with C by Kyle Loudon (Paperback - August 12, 1999)
$44.99 $29.84
In Stock | ||