乔治·T·海涅曼,伍斯特理工学院计算机科学系副教授,他还担任了2005年基于组件的软件工程靠前研讨会的议程。 加里·波利斯,伍斯特理工学院实践教授,他还是《Head First Object-0rlented Analysis and Desigrl》一书的合著者。 斯坦利·塞克欧,在将近四十年的时间里,先后在Knoxville伍斯特、蒙特利尔、重庆、洛桑以及巴黎的数所大学中任教。
无
Preface to the Second Edition 1. Thinking in Algorithms Understand the Problem Naive Solution Intelligent Approaches Summary References 2. The Mathematics of Algorithms Size of a Problem Instance Rate of Growth of Functions Analysis in the Best, Average, and Worst Cases Performance Families Benchmark Operations References 3. Algorithm Building Blocks Algorithm Template Format Pseudocode Template Format Empirical Evaluation Format Floating-Point Computation Example Algorithm Common Approaches References 4. Sorting Algorithms Transposition Sorting Selection Sort Heap Sort Partition-Based Sorting Sorting without Comparisons Bucket Sort Sorting with Extra Storage String Benchmark Results Analysis Techniques References 5. Searching Sequential Search Binary Search Hash-Based Search Bloom Filter Binary Search Tree References 6. Graph Algorithms Graphs Depth-First Search Breadth-First Search Single-Source Shortest Path Dijkstra's Algorithm for Dense Graphs Comparing Single-Source Shortest-Path Options All-Pairs Shortest Path Minimum Spanning Tree Algorithms Final Thoughts on Graphs References 7. Path Finding in AI Game Trees Path-Finding Concepts Minimax NegMax AlphaBeta Search Trees Depth-First Search Breadth-First Search A'Search Comparing Search-Tree Algorithms References 8. Network Flow Algorithms Network Flow Maximum Flow Bipartite Matching Reflections on Augmenting Paths Minimum Cost Flow Transshipment Transportation Assignment Linear Programming References 9. Computational Ge0metry Classifying Problems Convex Hull Convex Hull Scan Computing Line-Segment Intersections LineSweep Voronoi Diagram References 10. Spatial Tree Structures Nearest Neighbor Queries Range Queries Intersection Queries Spatial Tree Structures Nearest Neighbor Queries Range Query Quadtrees R-Trees References 11. Emerging Algorithm Categories Variations on a Theme Approximation Algorithms Parallel Algorithms Probabilistic Algorithms References 12. Epilogue: Principles of Algorithms Know Your Data Decompose a Problem into Smaller Problems Choose the Right Data Structure Make the Space versus Time Trade-Off Construct a Search Reduce Your Problem to Another Problem Writing Algorithms Is Hard-Testing Algorithms Is Harder Accept Approximate Solutions When Possible Add Parallelism to Increase Performance A. Benchmarking Index