|
![]() |
|||
|
||||
OverviewAppropriate for a sophomore/junior level second course in data structures and algorithms analysis (CS7) in departments of Computer Science. This book thoroughly covers key data structures at the undergraduate level. With a focus on how to assess costs and benefits, it teaches students how to create efficient data structures and algorithms and how to adopt to new design challenges. Students are taught how to assess applications needs to find data structures with matching capabilities. Full Product DetailsAuthor: Clifford A. ShafferPublisher: Pearson Education (US) Imprint: Pearson Edition: 2nd edition Dimensions: Width: 18.10cm , Height: 3.20cm , Length: 24.30cm Weight: 1.000kg ISBN: 9780130284464ISBN 10: 0130284467 Pages: 512 Publication Date: 15 September 2000 Audience: College/higher education , Tertiary & Higher Education Format: Hardback Publisher's Status: Out of Print Availability: Awaiting stock ![]() Table of Contents(NOTE: Each chapter concludes with Further Readings, Exercises, and/or Projects.)I. PRELIMINARIES. 1. Data Structures and Algorithms. A Philosophy of Data Structures. Abstract Data Types and Data Structures. Problems, Algorithms, and Programs. 2. Mathematical Preliminaries. Sets and Relations. Miscellaneous Notation. Logarithms. Recursion. Summations and Recurrences. Mathematical Proof Techniques. Estimating. 3. Algorithm Analysis. Introduction. Best, Worst, and Average Cases. A Faster Computer, or a Faster Algorithm? Asymptotic Analysis. Calculating the Running Time of a Program. Analyzing Problems. Common Misunderstandings. Multiple Parameters. Space Bounds. Some Practical Considerations. II. FUNDAMENTAL DATA STRUCTURES. 4. Lists, Stacks, and Queues. Lists. The Dictionary ADT. Stacks. Queues. 5. Binary Trees. Definitions and Properties. Binary Tree Traversals. Binary Tree Node Implementations. Binary Search Trees. Heaps and Priority Queues. Huffman Coding Trees. 6. Non-Binary Trees. General Tree Definitions and Terminology. The Parent Pointer Implementation. General Tree Implementations. K -ary Trees. Sequential Tree Implementations. III. SORTING AND SEARCHING. 7. Internal Sorting. Sorting Terminology and Notation. Three ...Q(n2) Sorting Algorithms. Shellsort. Quicksort. Mergesort. Heapsort. Binsort and Radix Sort. An Empirical Comparison of Sorting Algorithms. Lower Bounds for Sorting. 8. File Processing and External Sorting. Primary versus Secondary Storage. Disk Drives. Buffers and Buffer Pools. The Programmer's View of Files. External Sorting. Simple Approaches to External Sorting. Replacement Selection. Multiway Merging. 9. Searching. Searching Sorted Arrays. Self-Organizing Lists. Searching in Sets. Hashing. 10. Indexing. Linear Indexing. ISAM. Tree Indexing. 2-3 Trees. B-Trees. IV. APPLICATIONS AND ADVANCED TOPICS. 11. Graphs. Terminology and Representations. Graph Implementations. Graph Traversals. Shortest-Paths Problems. Minimum-Cost Spanning Trees. 12. Lists and Arrays Revisited. Skip Lists. Multilists. Matrix Representations. Memory Management. 13. Advanced Tree Structures. Tries. Balanced Trees. Spatial Data Structures. 14. Analysis Techniques. Summation Techniques. Recurrence Relations. Amortized Analysis. 15. Limits to Computation. Reductions. Hard Problems. Impossible Problems. V. APPENDIX. Utility Functions. Bibliography. Index.ReviewsAuthor InformationTab Content 6Author Website:Countries AvailableAll regions |