Search


Software Design Using C++



Further Information



Useful Tables

Reference Books and Other Materials


The following may be of use for those who would like further information about typical CS1 and CS2 topics, C++ programming, data structures and algorithms, etc. The items listed are in alphabetical order by title (though ignoring starting articles such as "A" and "The").
  • Algoviz Wiki Provides links to many algorithm visualization resources.
  • C++ From the Ground Up, 2nd ed. Herbert Schildt. Osborne/McGraw-Hill (1998). Schildt is known for his clear explanations.
  • C++ How to Program, 3rd ed. Deitel & Deitel. Prentice-Hall (2001).
  • Data Abstraction and Problem Solving with C++: Walls and Mirrors, 3rd ed. Frank M. Carrano and Janet J. Prichard. Addison-Wesley (2002).
  • Data Structures & Other Objects Using C++, 2nd ed. Michael Main and Walter Savitch. Addison Wesley Longman (2001).
  • Data Structures & Program Design, 2nd ed. Robert L. Kruse. Prentice-Hall (1987). This well-written text is Pascal-based. There is also a third edition (1994) as well as a new text, Data Structures and Program Design in C++, authored by Kruse and Alexander J. Ryba (1999).
  • Data Structures and the Standard Template Library. WIlliam J. Collins. McGraw-Hill (2003).
  • Data Structures: Form and Function. Harry F. Smith. Harcourt Brace Jovanovich (1987).
  • Data Structures in C++ Using the Standard Template Library. Timothy Budd. Addison-Wesley (1998). This book is intended for a data structures course. It uses the STL (standard template library) extensively.
  • Data Structures Using C++. D. S. Malik. Course Technology (2003).
  • Data Structures Using Pascal, 2nd ed. Aaron M. Tenenbaum, Moshe J. Augenstein. Prentice-Hall (1986). Although the examples are written in Pascal, this book gives a clear explanation of many of the common data structures and algorithms.
  • Data Structures with C++. William Ford and William Topp. Prentice-Hall (1996). This book is more advanced in most places than the material presented in these Web pages and is more appropriate for a course on data structures. It makes extensive use of templates.
  • Introduction to Algorithms. Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest. McGraw-Hill (1990). This book contains a considerable amount of material, much of it more advanced than that presented in these Web pages.
  • Introduction to Computer Science with C++. Kenneth A. Lambert, Douglas W. Nance, and Thomas C. Naps. West Publishing Company (1992). Templates are used in the later chapters to present data structures.
  • An Introduction to Computing, 3rd ed. Joel Adams and Larry Nyhoff. Prentice-Hall (2003).
  • MFC Programming in C++ with the Standard Template Libraries. William H. Murray and Chris H. Pappas. Prentice-Hall PTR (2000). This book discusses templates, the standard template library, Microsoft Foundation Class programming, and graphics programming.
  • A Practical Introduction to Data Structures and Algorithm Analysis. Clifford A. Shaffer. Prentice-Hall (1997).
  • Problem Solving, Abstraction, & Design Using C++, 3rd ed. Frank L. Friedman and Elliot B. Koffman. Addison-Wesley (2000).
  • Problem Solving with C++: The Object of Programming, 6th ed. Walter Savitch. Addison Wesley (2007).
  • STL Programming from the Ground Up. Herbert Schildt. Osborne/McGraw-Hill (1999).
  • Teach Yourself C++, 5th ed. Al Stevens. MIS:Press (1997).
  • Teach Yourself Visual C++ 5 in 24 Hours. Mickey Williams. Sams Publishing (1998).
  • Teach Yourself Visual C++ 5.0. David A. Holzgang and Lewis Napper. MIS:Press (1997). This book gives a good tutorial on visual programming.
  • Teach Yourself Visual C++ 6 in 21 Days. Davis Chapman. Sams Publishing (1998).
  • Visual C++ 5: The Complete Reference. Chris H. Pappas and William H. Murray III. Osborne/McGraw-Hill (1997). Useful for those who want to do visual programming.
  • Visual C++.NET: How to Program. Paul J. Deitel and Harvey M. Deitel. Prentice Hall (2004)
Back to the main page for Software Design Using C++

Author: Br. David Carlson
Last updated: August 19, 2007