TY - BOOK AU - Van Wyk,Christopher J. TI - Data structures and C programs SN - 0201161168 U1 - 005.73 19 PY - 1988/// CY - Reading, Mass. PB - Addison-Wesley KW - C (Computer program language) KW - Data structures (Computer science) N1 - Part I: Fundamental Ideas 1 Charting our Course 1.1 Problem: Summarizing Data 3 1.2 Solution I 5 1.3 Solution II 7 1.4 Measuring Performance 12 1.5 Summary and Respective 20 2 The Complexity of Algorithms 2.1 The idea of an Algorithm 25 2.2 Algorithms for Exponentiation 27 2.3 Asymptotic Analysis 2.4 Implementation Considerations 38 2.5 Summary and Perspective 41 3 Pointers and Dynamic Storage 3.1 Variables and Pointers 49 3.2 Character Strings and Arrays 56 3.3 Typedefs and Structures 66 3.4 Dynamic Storage Allocation 69 3.5 Summary and Perspective 72 4 Stacks and Queues 4.1 Two Disciplines for Paying Bills 79 4.2 The stack Data Type 81 4.3 The Queue Data type 84 4.4 Example Applications 89 4.5 Summary and Perspective 94 5 Linked Lists 5.1 Lists 101 5.2 Application: Sets 106 5.3 Miscellaneous tools for Linked structures 117 5.4 Multiply Linked Structures 5.5 Summary and Perspective 125 6 Memory Organization 6.1 More about Memory 129 6.2 Variables and the Runtime Stack 133 6.3 A simple Heap Management Scheme 6.4 Physical memory Organization 139 6.5 Summary and Perspective 142 Part II: Efficient Algorithms 7 Searching 7.1 Aspects of Searching 149 7.2 Self organising Linked Lists 152 7.3 Binary Search 155 7.4 Binary Trees 159 7.5 Binary Search Trees 163 Etc 8 Hashing 8.1 perfect Hashing 177 8.2 Collision Resolution Using A probe Strategy 179 8.3 Collusion Resolution Using Linked Lists 185 8.4 Summary and Perspective 186 9 Sorted Lists 9.1 Avl Trees 9.2 2,4 Trees 9.3 Implementation: Red-Black 9.4 Farther Topics 9.5 Summary and Perspective 10 Priority Queques 10.1 The Data type Priority Queque 10.2 Heaps 10.3 Implementation of Heaps 10.4Huffman Trees 10.5 Other Operations Etc 11 Sorting 11.1 Settings for Sorting 11.2 Two Simple Sorting Algorithms 11.3 Two Efficient Sorting Algorithms 11.4 Two useful Sorting Ideas 11.5 Summary and Perspective 12 Applying Data Structures 12.1 Double-entry Book keeping 12.2 Basic solution 12.3 solution I 12.4 solution II 12.5 summary and Perspective 13 Acyclic graphics 13.1 Rooted Trees 13.2 Disjoint Sets 13.3 Topological Sorting 13.5 Summary and Perspective 14 Graphics 14.1 Terminology 14.2 Data structures 14.3 Shortest paths 14.4 Minimum Spanning Trees 14.5 Traversal Orders and Graph Connectivity Etc ; Includes bibliographies and index ER -