Data Structures and Algorithms in C++

2. Edition March 2011
736 Pages, Softcover
Wiley & Sons Ltd
This second edition of Data Structures and Algorithms in C++ is
designed to provide an introduction to data structures and
algorithms, including their design, analysis, and implementation.
The authors offer an introduction to object-oriented design with
C++ and design patterns, including the use of class inheritance and
generic programming through class and function templates, and
retain a consistent object-oriented viewpoint throughout the book.
This is a "sister" book to Goodrich &
Tamassia's Data Structures and Algorithms in Java, but uses
C++ as the basis language instead of Java. This C++ version retains
the same pedagogical approach and general structure as the Java
version so schools that teach data structures in both C++ and Java
can share the same core syllabus.
In terms of curricula based on the IEEE/ACM 2001 Computing
Curriculum, this book is appropriate for use in the courses CS102
(I/O/B versions), CS103 (I/O/B versions), CS111 (A version), and
CS112 (A/I/O/F/H versions).
Chapter 2 - Object-Oriented Design.
Chapter 3 - Analysis Tools.
Chapter 4 - Stacks, Queues, and Recursion.
Chapter 5 - Vectors, Lists, and Sequences.
Chapter 6 - Trees.
Chapter 7 - Priority Queues.
Chapter 8 - Dictionaries.
Chapter 9 - Search Trees.
Chapter 10 - Sorting, Sets, and Selection.
Chapter 11 - Text Processing.
Chapter 12 - Graphs.
Appendix: Useful Mathematical Facts.
"Data Structure and Program Design". I shall recommend this book to
my students. So, may be in the future this book will be the main
reference to our students in BUC.
Mrs Lina Ali, Al Buraimi University College
Roberto Tamassia received his Ph.D. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign in 1988. He is currently a professor in the Department of Computer Science at Brown University. He is editor-in-chief for the Journal of Graph Algorithms and Applications and an editor for Computational Geometry: Theory and Applications. He previously served on the editorial board of IEEE Transactions on Computers.