This new edition provides a comprehensive and technically rigorous introduction to data structures such as arrays, stacks, queues, linked lists, trees and graphs and techniques such as sorting hashing that form the basis of all software. In addition, this text presents advanced or specialized data structures such as priority queues, efficient binary search trees, multiway search trees and digital search structures. The book has been updated to include the latest features of the C++ language. Features such as exceptions and templates are now incorporated throughout the text along with limited exposure to STL. Treatment of queues, iterators and dynamic hashing has been improved. The book now discusses topics such as secure hashing algorithms, weightbiased leftist trees, pairing heaps, symmetric min–max heaps, interval heaps, top-down splay trees, B+ trees and suffix trees. Red–black trees have been made more accessible. The section on multiway tries has been significantly expanded and discusses several trie variations and their application to Internet packet forwarding.