Skip to main content

Data Structures and Algorithms in Python

Data Structures and Algorithms in Python

Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser

ISBN: 978-1-118-54958-2 March 2013 768 Pages




Based on the authors’ market leading data structures books in Java and C++, this textbook offers a comprehensive, definitive introduction to data structures in Python by respected authors.  Data Structures and Algorithms in Python is the first mainstream object-oriented book available for the Python data structures course.  Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and Algorithms in C++.

Related Resources

  1. Python Primer
  2. Object-Oriented Programming
  3. Algorithm Analysis
  4. Recursion
  5. Array-Based Sequences
  6. Stacks, Queues, and Deques
  7. Linked Lists
  8. Trees
  9. Priority Queues
  10. Maps, Hash Tables, and Skip Lists
  11. Search Trees
  12. Sorting and Selection
  13. Text Processing
  14. Graph Algorithms
  15. Memory Management and B-Trees
    A. Character Strings in Python
    B. Useful Mathematical Facts

• A primer that reviews the basics of programming in Python (Chapter 1), followed by a separate introduction to object-oriented programming in Python (Chapter 2).

• Extensive coverage of recursion (Chapter 4).

• A chapter describing the array-based underpinnings of Python’s standard list, string, and tuple classes (Chapter 5), including both theoretical and empirical analyses of their efficiencies.

• Source code with complete implementations of the majority of data structures and algorithms described in the book; the code follows modern standards for Python 3, and makes use of the standard collections module.

• 500 illustrations that present data structures and algorithms in a clear, visual manner.

• More than 750 exercises, divided into categories of reinforcement, creativity, and projects.