1. 程式人生 > >《資料結構與演算法分析C++描述》Mark.Allen.Weiss.pdf

《資料結構與演算法分析C++描述》Mark.Allen.Weiss.pdf


  1.1 What's the Book About?
  1.2 Mathematics Review
  1.3 A Brief Introduction to Recursion
  1.4 C++ Classes
  1.5 C++ Details
  1.6 Templates
  1.7 Using Matrices
  Chapter 2 Algorithm Analysis
  2.1 Mathematical Background
  2.2 Model
  2.3 What to Analyze
  2.4 Running Time Calculations
  Chapter 3 Lists,Stacks,and Queues
  3.1 Abstract Data Types(ADTS)
  3.2 The List ADT
  3.3 The Stack ADT
  3.4 The Queue ADT
  Chapter 4 Trees
  4.1 Preliminaries
  4.2 Binary Trees
  4.3 The Search Tree ADT——Binary Search Trees
  4.4 AVL Trees
  4.5 Splay Trees
  4.6 Tree Traversals(Revisited)
  4.7 B-Trees
  Chapter 5 Hashing
  5.1 General Idea
  5.2 Hash Function
  5.3 Separate Chaining
  5.4 Open Addressing
  5.5 Rehashing
  5.6 Extendible Hashing
  Chapter 6 Priority Queues(Heaps)
  6.1 Model
  6.2 Simple Implementations
  6.3 Binary Heap
  6.4 Applicatins of Priority Queues
  6.5 d-Heaps
  6.6 Leftist Heaps
  6.7 Skew Heaps
  6.8 Binomial Queues
  Chapter 7 Sorting
  7.1 Preliminaries
  7.2 Insertion Sort
  7.3 A Lower Bound for Simple Sorting Algorithms
  7.4 Shellsort
  7.5 Heapsort
  7.6 Mergesort
  7.7 Quicksort
  7.8 Indirect Soring
  7.9 A Generl Lower Bound for Sorting
  7.10 Bucket Sort
  7.11 External Sorting
  Chapter 8 The Disjoint Set ADT
  8.1 Equivalence Relations
  8.2 The Dynamic Equivalence Problem
  8.3 Basic Data Structure
  8.4 Smart Union Algorithms
  8.5 Path Compression
  8.6 Worst Case for Union-by-Rank and Path Compression
  8.7 An Application
  Chapter 9 Graph Algorithms
  9.1 Definitions
  9.2 Topological Sort
  9.3 Shortest-Path Algorithms
  9.4 Network Flow Problems
  9.5 Minimum Spanning Tree
  9.6 Applications of Depth-First Search
  9.7 Introduction to NP-Completeness
  Chapter 10 Algorithm Design Techniques
  10.1 Greedy Algorithms
  10.2 Divide and Conquer
  10.3 Dynamic Programming
  10.4 Randomized Algorithms
  10.5 Backtracking Algorithms
  Chapter 11 Amortized Analysis
  11.1 An Unrelated Puzzle
  11.2 Binomial Queues
  11.3 Skew Heaps
  11.4 Fibonacci Heaps
  11.5 Splay Trees
  Chapter 12 Advanced Data Structures and Implementation
  12.1 Top-Down Splay Trees
  12.2 Red-Black Trees
  12.3 Daterministic Skip Lists
  12.4 AA-Trees
  12.5 Treaps
  12.6 k-d Trees
  12.7 Pairing Heaps
  Appendix A The Standard Template Library
  A.1 Introduction
  A.2 Basic STL Concepts
  A.3 Unordered Sequences:vector and list
  A.4 Sets
  A.5 Maps
  A.6 Example:Generating a Concordance
  A.7 Example:Shortest-Path Calculation
  A.8 Other STL Features
  Appendix B vector and string Classes
  B.1 First-Class versus Second-Class Objects
  B.2 vector Class
  B.3 string Class
  Index[2]