Chapter 1—This chapter has been completely restructured and reorganized so that it now provides a brief recapitulation of C constructs and syntax. Functions and pointers which were included as independent chapters in the first edition have now been jointly included in this chapter.
Chapter 2—New sections on primitive and non-primitive data structures, different approaches to designing algorithms, omega, theta, and little notations have been included. A number of new examples have also been added which show how to find the complexity of different functions.
Chapter 5—This chapter now includes brief sections on unions, a data type similar to structures.
Chapter 6—This chapter has been expanded to include topics on multi-linked lists, multi-linked list implementation of sparse matrices, and a C program on header linked lists.
Chapter 7—New C programs on parenthesis checking and evaluation of prefix expressions have been added. Recursion, which is one of the most common applications of stacks, has been moved to this chapter.
Chapter 8—New C programs on priority queues and multiple queues have been included.
Chapter 9—This chapter now includes sections on general trees, forests, conversion of general trees into binary trees, and constructing a binary tree from traversal results.
Chapter 10—An algorithm for in-order traversal of a threaded binary tree has been added.
Chapter 11—A table summarizing the differences between B and B+ trees and a section on 2-3 trees have been included.
Chapter 12—A brief section on how binary heaps can be used to implement priority queues has been added.
Chapter 13—This chapter now includes a section which shows the adjacency multi-list representation of graphs.
Chapter 14—As a result of organization, the sections on linear and binary search have been moved from Chapter 3 to this chapter. New search techniques such as interpolation search, jump search, and Fibonacci search have also been included. The chapter also extends the concept of sorting by including sections on practical considerations for internal sorting, sorting on multiple keys, and tree sort.
Chapter 15—New sections on bucket hashing and rehashing have been included.
Chapter 16—This chapter now includes a section on cylinder surface indexing which is one of the widely used indexing structures for files stored in hard disks.