![]() Trade In this Item for up to £8.35
Get an extra £5 when you trade in books worth £10 or more until June 30, 2012. Trade in Mastering Algorithms with C for an Amazon.co.uk gift card of up to £8.35, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Find more products eligible for trade-in.
|
Product details
|
The highlight of the book has to be its concise and readable C functions for all the algorithms presented here, including basics such as linked lists, stacks to trees, graphs and sorting/searching algorithms. The C functions that implement these algorithms are clearly printed and remarkably easy to read. You can use this sample code directly or adapt it into your C/C++ code.
Although mathematical concepts like Big-O notation are discussed, the authors don't get bogged down in the computer science theory surrounding algorithms. Instead, they present the most tried-and-true algorithms available today in an efficient format. Besides introducing each algorithm, they describe how each is used in computing today, along with a short demo application. Some of these samples are quite low-level, such as a virtual memory manager implemented with linked lists. Most examples are more general interest, such as a graphing example that counts network hops.
Each section ends with questions and answers about how the algorithms work, along with references to other algorithms (both in the book and from other sources). The authors concentrate on the most useful algorithms available today and don't try to cover every available variation. Busy readers will appreciate the intelligent selection--and efficient presentation--used here.
There are a number of books on C algorithms, but Master Algorithms With C is one of the most concise and immediately useful. It's a perfect choice for the working C/C++ programmer who's in a hurry to find just the right algorithm for writing real-world code. --Richard Dragan
Topics covered: Algorithm efficiency, pointer basics, arrays, recursion, Big-O Notation, linked lists, stacks, queues, sets, hash tables, trees and B-trees, searching, heaps and priority queues, graphs, sorting and searching algorithms, numerical methods, data compression, Huffman coding, LZ77, data encryption, DES, RSA, graph algorithms, minimum spanning trees, geometric algorithms, convex hulls.
Suggested Tags from Similar Products(What's this?)Be the first one to add a relevant tag (keyword that's strongly related to this product)
|
I must comment on one of the other reader reviews, which has been cribbed from a similar review on the website of O'Reilly, this books publishers. Anyone who doesn't know the fundamental problems with numeric accuracy on computers should not be at a stage where they need to know algorithms in C. Any good computing course should cover the fundamentals of how numbers are stored, stressing the lack of precision and the possibility of overflow, before any in depth programming is taught.
I would recommend it to anyone.
Incredibly, Loudon presents a chapter on numerical methods without any discussion of the effects of the limitations imposed by the finite representation of numbers in C. No mention is made of the problems that occur when one tries to represent extremely large numbers or extemely small numbers (close to 0) in C, yet these are common situations when line gradients approach vertical or horizontal. Loudon presents C as though it was capable of representing numbers, when of course C is only capable of a very limited approximation to numbers.
Novices who enter the field of numerical methods without having been warned about the problem are going to risk producing very inaccurate results (and one presumes that some of the readers of this book may simply take the implementations of algorithmspresented and apply them to the field they work in, be it analysis of biological experiment results, or investment performance analysis.)
The best Loudon does is to mention "Error Approximation" in the "Related Topics" section at the end of the chapter -- but please note, Loudon is referring to the problems of approximation in the algorithm itself, not the additional problems caused by implementing the algorithm in C where numbers are not represented exactly.
In summary, the problem here is that Loudon has written a useful chapter about some algorithms used in numerical methods, yet has completely failed to deal with the consequences of the implementation of those algorithms in C (surely the point of such a book as this?)...This part of the book is, in my opinion, extremely dangerous to the user, and must be corrected in the next edition.
|