Software Design Using C++
An Online Book
Old Version -- No Longer Maintained
Further Information
The following may be of use for those who would like further information
about typical CS2 topics, C++ programming, data structures and algorithms, etc.
- C++ From the Ground Up, 2nd ed.
Herbert Schildt. Osborne/McGraw-Hill (1998).
Schildt is known for his clear explanations.
- STL Programming from the Ground Up. Herbert Schildt.
Osborne/McGraw-Hill (1999).
- 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 with C++.
William Ford, 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.
- 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 & 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).
- A Practical Introduction to Data Structures and Algorithm Analysis
. Clifford A. Shaffer. Prentice-Hall (1997).
- 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.
- Data Structures: Form and Function.
Harry F. Smith. Harcourt Brace Jovanovich (1987).
- Introduction to Computer Science with C++.
Kenneth A. Lambert, Douglas W. Nance, Thomas C. Naps.
West Publishing Company (1992).
This is a good CS1/CS2 text. Templates are used in the later
chapters to present data structures.
- Teach Yourself C++, 5th ed.
Al Stevens. MIS:Press (1997).
- C++ How to Program, 2nd ed. Deitel & Deitel.
Prentice-Hall (1998).
- Teach Yourself Visual C++ 5.0.
David A. Holzgang, Lewis Napper. MIS:Press (1997).
This book gives a good tutorial on visual programming.
- Visual C++ 5: The Complete Reference.
Chris H. Pappas, William H. Murray, III.
Osborne/McGraw-Hill (1997).
Especially useful for those who want to do visual programming.
- MFC Programming in C++ with the Standard Template Libraries.
William H. Murray, Chris H. Pappas.
Prentice-Hall PTR (2000).
This book discusses templates, the standard template library,
Microsoft Foundation Class programming, and graphics programming.