Mastering Algorithms with C

ISBN-10: 1565924533

ISBN-13: 9781565924536

Edition: 1999

List price: $44.99 Buy it from $7.04
eBook available
30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy

Description:

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 theintroductory 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
Used Starting from $21.58
New Starting from $33.34
eBooks Starting from $35.99
Rent eBooks
Buy eBooks
what's this?
Rush Rewards U
Members Receive:
coins
coins
You have reached 400 XP and carrot coins. That is the daily max!
Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
SQL Online content $4.95 $1.99
Add to cart
Study Briefs
MS Excel® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS Word® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS PowerPoint® 2010 Online content $4.95 $1.99
Customers also bought
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

Book details

List price: $44.99
Copyright year: 1999
Publisher: O'Reilly Media, Incorporated
Publication date: 8/15/1999
Binding: Paperback
Pages: 560
Size: 8.00" wide x 9.50" long x 1.50" tall
Weight: 2.090
Language: English

Kyle Loudon is a software engineer at Matrix Semiconductor in Santa Clara, California, where he works with file systems and applications for memory chips. Prior to Matrix, Kyle developed platform software for embedded devices, including various wireless phones and the Apple iPod. He also led the graphical user interface group at Jeppesen Dataplan (now a part of Boeing), developed flight planning software, and created system software at IBM in the early 1990s. For the past several years, Kyle has taught object-oriented programming using C++ at the University of California, Santa Cruz Extension, and has worked with C++ since the beginning of its widespread use in 1990. Kyle is the author of Mastering Algorithms with C, also published by O'Reilly and Associates.

Preface
Preliminaries
Introduction
An Introduction to Data Structures
An Introduction to Algorithms
A Bit About Software Engineering
How to Use This Book
Pointer Manipulation
Pointer Fundamentals
Storage Allocation
Aggregates and Pointer Arithmetic
Pointers as Parameters to Functions
Generic Pointers and Casts
Function Pointers
Questions and Answers
Related Topics
Recursion
Basic Recursion
Tail Recursion
Questions and Answers
Related Topics
Analysis of Algorithms
Worst-Case Analysis
O-Notation
Computational Complexity
Analysis Example: Insertion Sort
Questions and Answers
Related Topics
Data Structures
Linked Lists
Description of Linked Lists
Interface for Linked Lists
Implementation and Analysis of Linked Lists
Linked List Example: Frame Management
Description of Doubly-Linked Lists
Interface for Doubly-Linked Lists
Implementation and Analysis of Doubly Linked Lists
Description of Circular Lists
Interface for Circular Lists
Implementation and Analysis of Circular Lists
Circular List Example: Second-Chance Page Replacement
Questions and Answers
Related Topics
Stacks and Queues
Description of Stacks
Interface for Stacks
Implementation and Analysis of Stacks
Description of Queues
Interface for Queues
Implementation and Analysis of Queues
Queue Example: Event Handling
Questions and Answers
Related Topics
Sets
Description of Sets
Interface for Sets
Implementation and Analysis of Sets
Set Example: Set Covering
Questions and Answers
Related Topics
Hash Tables
Description of Chained Hash Tables
Interface for Chained Hash Tables
Implementation and Analysis of Chained Hash Tables
Chained Hash Table Example: Symbol Tables
Description of Open-Addressed Hash Tables
Interface for Open-Addressed Hash Tables
Implementation and Analysis of Open Addressed Hash Tables
Questions and Answers
Related Topics
Trees
Description of Binary Trees
Interface for Binary Trees
Implementation and Analysis of Binary Trees
Binary Tree Example: Expression Processing
Description of Binary Search Trees
Interface for Binary Search Trees
Implementation and Analysis of Binary Search Trees
Questions and Answers
Related Topics
Heaps and Priority Queues
Description of Heaps
Interface for Heaps
Implementation and Analysis of Heaps
Description of Priority Queues
Interface for Priority Queues
Implementation and Analysis of Priority Queues
Priority Queue Example: Parcel Sorting
Questions and Answers
Related Topics
Graphs
Description of Graphs
Interface for Graphs
Implementation and Analysis of Graphs
Graph Example: Counting Network Hops
Graph Example: Topological Sorting
Questions and Answers
Related Topics
Algorithms
Sorting and Searching
Description of Insertion Sort
Interface for Insertion Sort
Implementation and Analysis of Insertion Sort
Description of Quicksort
Interface for Quicksort
Implementation and Analysis of Quicksort
Quicksort Example: Directory Listings
Description of Merge Sort
Interface for Merge Sort
Implementation and Analysis of Merge Sort
Description of Counting Sort
Interface for Counting Sort
Implementation and Analysis of Counting Sort
Description of Radix Sort
Interface for Radix Sort
Implementation and Analysis of Radix Sort
Description of Binary Search
Interface for Binary Search
Implementation and Analysis of Binary Search
Binary Search Example: Spell Checking
Questions and Answers
Related Topics
Numerical Methods
Description of Polynomial Interpolation
Interface for Polynomial Interpolation
Implementation and Analysis of Polynomial Interpolation
Description of Least-Squares Estimation
Interface for Least-Squares Estimation
Implementation and Analysis of Least-Squares Estimation
Description of the Solution of Equations
Interface for the Solution of Equations
Implementation and Analysis of the Solution of Equations
Questions and Answers
Related Topics
Data Compression
Description of Bit Operations
Interface for Bit Operations
Implementation and Analysis of Bit Operations
Description of Huffman Coding
Interface for Huffman Coding
Implementation and Analysis of Huffman Coding
Huffman Coding Example: Optimized Networking
Description of LZ77
Interface for LZ77
Implementation and Analysis of LZ77
Questions and Answers
Related Topics
Data Encryption
Description of DES
Interface for DES
Implementation and Analysis of DES
DES Example: Block Cipher Modes
Description of RSA
Interface for RSA
Implementation and Analysis of RSA
Questions and Answers
Related Topics
Graph Algorithms
Description of Minimum Spanning Trees
Interface for Minimum Spanning Trees
Implementation and Analysis of Minimum Spanning Trees
Description of Shortest Paths
Interface for Shortest Paths
Implementation and Analysis of Shortest Paths
Shortest Paths Example: Routing Tables
Description of the Traveling-Salesman Problem
Interface for the Traveling-Salesman Problem
Implementation and Analysis of the Traveling-Salesman Problem
Questions and Answers
Related Topics
Geometric Algorithms
Description of Testing Whether Line Segments Intersect
Interface for Testing Whether Line Segments Intersect
Implementation and Analysis of Testing Whether Line Segments Intersect
Description of Convex Hulls
Interface for Convex Hulls
Implementation and Analysis of Convex Hulls
Description of Arc Length on Spherical Surfaces
Interface for Arc Length on Spherical Surfaces
Implementation and Analysis of Arc Length on Spherical Surfaces
Arc Length Example: Approximating Distances on Earth
Questions and Answers
Related Topics
Index
×
Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.

×