Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching, 3/e (Paperback)
$1,425Mastering Algorithms with C (Paperback)
$199Communication Skills Handbook (Paperback)
$900OpenGL Shading Language, 2/e (Paperback)
$900CMMI: Guidelines for Process Integration and Product Improvement, 2/e
$1,110Criminalistics: An Introduction to Forensic Science, 9/e[Hardcover]
For this version of Robert Sedgewick's popular textbook on algorithms and data structures, Christopher Van Wyk and Robert Sedgewick have developed new C++ implementations that both express the presented methods in a concise and direct manner, and also provide students with the practical means to test them on real applications.
This particular book, Parts 1-4, represents a substantial update of the first half of Sedgewick's complete work. It provides extensive coverage of fundamental data structures and algorithms for sorting, searching, and related applications. The update features expanded coverage of arrays, linked lists, strings, trees, and other basic data structures, and greater emphasis on abstract data types (ADTs), modular programming, object-oriented programming, and C++ classes than in previous editions. It includes over 100 algorithms for sorting, selection, priority queue ADT implementations, and symbol table ADT (searching) implementations, and over 1,000 new exercises to help students learn the properties of algorithms.
A Sample Problem-Connectivity.
Summary of Topics.
2. Principles of Algorithm Analysis.
Analysis of Algorithms.
Growth of Functions.
Examples of Algorithm Analysis.
Guarantees, Predictions, and Limitations.
Elementary List Processing.
Memory Allocation for Lists.
Compound Data Structures.
4. Abstract Data Types.
Pushdown Stack ADT.
Examples of Stack ADT Clients.
Stack ADT Implementations.
Creation of a New ADT.
FIFO Queues and Generalized Queues.
Duplicate and Index Items.
Application-Based ADT Example.
5. Recursion and Trees.
Divide and Conquer.
Mathematical Properties of Trees.
Recursive Binary-Tree Algorithms.
Performance Characteristics of Elementary Sorts.
Sorting Other Types of Data.
Index and Pointer Sorting.
Sorting Linked Lists.
Performance Characteristics of Quicksort.
Strings and Vectors.
8. Merging and Mergesort.
Abstract In-Place Merge.
Improvements to the Basic Algorithm.
Performance Characteristics of Mergesort.
Linked-List Implementations of Mergesort.
9. Priority Queues and Heapsort.
Heap Data Structure.
Algorithms on Heaps.
Priority Queues for Index Items.
10. Radix Sorting.
MSD Radix Sort.
Three-Way Radix Quicksort.
LSD Radix Sort.
Performance Characteristics of Radix Sorts.
11. Special-Purpose Sorts.
Binary Search Trees (BSTs).
Performance Characteristics of BSTs.
Index Implementations with Symbol Tables.
Insertion at the Root in BSTs.
BST Implementations of Other ADT Functions.
13. Balanced Trees.
Top-Down 2-3-4 Trees.
Dynamic Hash Tables.
15. Radix Search.
Multiway Tries and TSTs.
Text String Index Applications.
16. External Searching.
Indexed Sequential Access.