This new edition provides a comprehensive coverage of fundamental data structures, making it ideal for use in computer science courses. It makes significant use of the Standard Templates Library (STL) and relates the data structures and algorithms developed in the text to corresponding implementations in the STL. Many new examples and exercises also have been included. Real-world applications are a unique feature of this text. The author provides several applications for each data structure and algorithm design method discussed, taking examples from topics such as sorting, compression and coding, and image processing. There are almost 1,000 exercises, including comprehension and simple programming problems, and projects. Additionally, the book has an associated web site that contains all the programs in the book, sample data, generated output, solutions to selected exercises, and sample tests with answers.
Part I: Preliminaries Chapter 1 C++ Review Chapter 2 Performance analysis Chapter 3 Asymptotic Notation Chapter 4 Performance Measurement
Part II: Data Structures Chapter 5 Linear lists -- Array representation Chapter 6 Linear Lists -- Linked Representation Chapter 7 Arrays and Matrices Chapter 8 Stacks Chapter 9 Queues Chapter 10 Skip List and Hashing Chapter 11 Binary and other trees Chapter 12 Priority Queues Chapter 13 Tournament Trees Chapter 14 Binary Search Trees Chapter 15 Balanced Search Trees Chapter 16 Graphs
Part III Algorithm-Design Methods Chapter 17 The Greedy Method Chapter 18 Divide and Conquer Chapter 19 Dynamic Programming Chapter 20 Backtracking (on the web) Chapter 21 Branch and Bound (on the web)
Index