Data Structures and Their Algorithms (Hardcover)
by Harry R. Lewis and Larry Denenberg
In stock. Usually ships within 24 hours.
|
Overview
067339736XB04062001
ALSO AVAILABLE
Used Book Partners offer 20 copies
Related Categories:
Books > Computers & Internet > Data Modeling & Design
Books > Computers & Internet > Computer Science
Books > Computers & Internet > Programming - Algorithms
- ISBN-13: 9780673397362
- ISBN-10: 067339736X
- Publisher: Addison Wesley Longman
- Date: January 1997
- Page Count: 509
Customer Reviews
Table of Contents
I. INTRODUCTION PROGRAMMING AS AN ENGINEERING ACTIVITY.
Computer Science Background.
Mathematical Background.
Memory and Data in Von Neuman Computers.
Notation for Programs; Locatives.
Abstract Data Types.
Notation for Programs; Locatives.
Abstract Data Types.
Mathematical Background.
Finite and Infinite Series.
Logarithms, Powers, and Exponentials.
Order Notation.
Recurrence Relations.
Naive Probability Theory.
Logarithms, Powers, and Exponentials.
Order Notation.
Recurrence Relations.
Naive Probability Theory.
II. ALGORITHM ANALYSIS.
Properties of an Algorithm.
Exact vs. Growth-Rate Analysis.
Algorithm Paradigms.
Greedy Algorithms.
Effectiveness; Correctness.
Termination; Efficiency.
Program Complexity.
Termination; Efficiency.
Program Complexity.
Exact vs. Growth-Rate Analysis.
Principles of Mathematical Analysis.
Expected Case and Amortized Analysis.
Expected Case and Amortized Analysis.
Algorithm Paradigms.
Brute-Force and Exhaustive Search.
Greedy Algorithms.
Dynamic Programming.
NP Completeness.
NP Completeness.
III. LISTS.
List Operations.
Basic List Representations.
Stack Representation in Contiguous Memory.
Queue Representation in Contiguous Memory.
Stack Representation in Linked Memory.
Queue Representation in Linked Memory.
Stacks and Recursions.
List Representations for Traversals.
Doubly Linked Lists.
Stack Representation in Contiguous Memory.
Queue Representation in Contiguous Memory.
Stack Representation in Linked Memory.
Queue Representation in Linked Memory.
Stacks and Recursions.
List Representations for Traversals.
Doubly Linked Lists.
IV. TREES BASIC DEFINITIONS.
Special Kinds of Trees.
Tree Operations and Traversals.
Tree Implementations.
Representation of Binary Trees.
Representation of Ordered Trees.
Representation of Complete Binary Trees.
Implementing Tree Traversals and Scans.
Stack-Based Traversals.
Link Inversion Traversal.
Scanning a Tree in Constant Space.
ThreadedTrees.
Implementing Level-Order Traversal.
Summary.
Tree Implementations.
Representation of Binary Trees.
Representation of Ordered Trees.
Representation of Complete Binary Trees.
Implementing Tree Traversals and Scans.
Stack-Based Traversals.
Link Inversion Traversal.
Scanning a Tree in Constant Space.
ThreadedTrees.
Implementing Level-Order Traversal.
Summary.
V. ARRAYS AND STRINGS.
Arrays as Abstract Data Types.
Sparse Arrays.
Arrays with Special Shapes.
Multidimensional Arrays.
Contiguous Representation of Arrays.
Constant Time Initialization.
Contiguous Representation of Arrays.
Constant Time Initialization.
Sparse Arrays.
List Representations.
Hierarchical Tables.
Hierarchical Tables.
Arrays with Special Shapes.
Representation of Strings.
Huffman Encoding; Lempel Ziv Encoding.
String Searching.
The Knuth-Morris-Pratt Algorithm.
The Boyer-Moore Algorithm.
Fingerprinting and the Karp-Rabin Algorithm.
Huffman Encoding; Lempel Ziv Encoding.
String Searching.
The Knuth-Morris-Pratt Algorithm.
The Boyer-Moore Algorithm.
Fingerprinting and the Karp-Rabin Algorithm.
VI. LIST AND TREE IMPLEMENTATION OF SETS.
Sets and Dictionaries as Abstract Data Types.
Unordered Lists.
Ordered Lists.
Unordered Lists.
Ordered Lists.
Binary Search; Interpolation Search; Skip Lists.
Binary Search Trees.
Insertion; Deletion.
Static Binary Search Trees.
Optimal Trees; Probability-Balanced.
Trees; Median Split Trees.
Binary Search Trees.
Insertion; Deletion.
Static Binary Search Trees.
Optimal Trees; Probability-Balanced.
Trees; Median Split Trees.
VII. TREE STRUCTURES FOR DYNAMIC DICTIONARIES.
AVL Trees: Insertion; Deletion.
23 Trees and Btrees.
23 Trees; Red-Black Trees.
(a,b)Trees and B Trees.
Self-Adjusting Binary Search Trees.
23 Trees; Red-Black Trees.
(a,b)Trees and B Trees.
Self-Adjusting Binary Search Trees.
VIII. SETS OF DIGITAL DATA.
Bit Vectors.
Hashing Techniques.
Hashing Functions.
Tries and Digital Search Trees.
Hashing Techniques.
Chaining Strategies; Open Addressing Strategies.
Deletions; Extendable Hashing.
Deletions; Extendable Hashing.
Hashing Functions.
Hashing by Division; Hashing by Multiplication.
Perfect Hashing of Static Data; Universal Classes of Hash Functions.
Perfect Hashing of Static Data; Universal Classes of Hash Functions.
IX. SETS WITH SPECIAL OPERATIONS.
Priority Queues.
Heaps; Leftist Trees.
Balanced Tree Implementations.
Heaps; Leftist Trees.
Disjoint Sets with Union.
Up-Trees; Path Compression.
Range Searching: kdTrees for Multidimensional Searching.
Quad Trees; Grid Files.
Up-Trees; Path Compression.
Range Searching: kdTrees for Multidimensional Searching.
Quad Trees; Grid Files.
X. MEMORY MANAGEMENT.
The Problem of Memory Management.
Records of a Single Size.
Reference Counts; Mark and Sweep.
Garbage Collection; Collecting by Copying.
Final Cautions on Garbage Collection.
Compaction of Records of Various Sizes.
Managing A Pool of Blocks of Various Sizes.
Allocation Strategies; Data Structures for Freeing; Buddy Systems.
Reference Counts; Mark and Sweep.
Garbage Collection; Collecting by Copying.
Final Cautions on Garbage Collection.
Compaction of Records of Various Sizes.
Managing A Pool of Blocks of Various Sizes.
Allocation Strategies; Data Structures for Freeing; Buddy Systems.
XI. SORTING.
Kinds of Sorting Algorithms.
Digital Sorting.
External Sorting.
Insertion and Shell Sort.
Selection and Heap Sort.
Quick Sort.
The Information-Theoretic Lower Bound.
Selection and Heap Sort.
Quick Sort.
The Information-Theoretic Lower Bound.
Digital Sorting.
Bucket Sort; Radix Sort; Radix Exchange Sort.
External Sorting.
Merge Sorts; Polyphase Merge Sort.
Generating the Initial Runs.
Finding the Median.
Generating the Initial Runs.
Finding the Median.
XII. GRAPHS.
Graphs and Their Representation.
Trees.
Graph Searching.
Greedy Algorithms on Graphs.
Network Flow.
Algorithm.
Trees.
Graph Searching.
Breadth-First Search; Depth-First Search.
Greedy Algorithms on Graphs.
Minimum Spanning Trees; Single-Source Least-Cost Paths.
All Pairs Least-Cost Paths.
All Pairs Least-Cost Paths.
Network Flow.
Finding Maximum Flows.
Implementing the Max Flow.
Implementing the Max Flow.
Algorithm.
Applications of Max Flow.
XIII. ENGINEERING WITH DATA STRUCTURES.
Locatives.
- ISBN: 9780673397362
- Publisher: Addison Wesley Longman
- Date: January 1997
- Page Count: 509
- Availability: In stock. Usually ships within 24 hours.







