There are many books on data structures and algorithms, and some books
laying out useful libraries of C functions, but this book aims to give
you a unique combination of theoretical background and working
code. In offering robust solutions for everyday programming tasks,
Mastering Algorithms with C avoids the abstract style of most
classic data structures and algorithms texts but still provides all
the information you need to understand the purpose and use of common
programming techniques.
Implementations, as well as interesting, real-world examples of each data
structure and algorithm, are shown in the text. Full source code appears on
the accompanying disk.
Using both a programming style and a writing style that are
exceptionally clean, Kyle Loudon shows you how to use such essential
data structures as lists, stacks, queues, sets, trees, heaps, priority
queues, and graphs. He shows you how to use algorithms for sorting,
searching, numerical analysis, data compression, data encryption,
common graph problems, and computational geometry. He also describes
the relative efficiency of all implementations. The compression and
encryption chapters not only give you working code for reasonably
efficient solutions, they explain concepts in an approachable manner
for people who never have had the time or expertise to study them in
depth.
Anyone with a basic understanding of the C language can use this book.
In order to provide maintainable and extendible code, an extra level
of abstraction (such as pointers to functions) is used in examples
where appropriate. Understanding that these techniques may be
unfamiliar to some programmers, Loudon explains them clearly in the
introductory chapters.
Contents include:
- Pointers
- Recursion
- Analysis of algorithms
- Data structures (lists, stacks, queues, sets, hash tables, trees, heaps,
priority queues, graphs,)
- Sorting and searching
- Numerical methods
- Data compression
- Data encryption
- Graph algorithms
- Geometric algorithms
|