Advertisement

Data Structures and Algorithms with Python

  • Kent D. Lee
  • Steve Hubbard

Part of the Undergraduate Topics in Computer Science book series (UTICS)

Table of contents

  1. Front Matter
    Pages i-xv
  2. Kent D. Lee, Steve Hubbard
    Pages 1-40
  3. Kent D. Lee, Steve Hubbard
    Pages 41-65
  4. Kent D. Lee, Steve Hubbard
    Pages 67-90
  5. Kent D. Lee, Steve Hubbard
    Pages 91-138
  6. Kent D. Lee, Steve Hubbard
    Pages 139-161
  7. Kent D. Lee, Steve Hubbard
    Pages 163-183
  8. Kent D. Lee, Steve Hubbard
    Pages 185-204
  9. Kent D. Lee, Steve Hubbard
    Pages 205-214
  10. Kent D. Lee, Steve Hubbard
    Pages 215-236
  11. Kent D. Lee, Steve Hubbard
    Pages 237-260
  12. Kent D. Lee, Steve Hubbard
    Pages 261-280
  13. Kent D. Lee, Steve Hubbard
    Pages 281-297
  14. Kent D. Lee, Steve Hubbard
    Pages 299-299
  15. Kent D. Lee, Steve Hubbard
    Pages 301-301
  16. Kent D. Lee, Steve Hubbard
    Pages 303-306
  17. Kent D. Lee, Steve Hubbard
    Pages 307-308
  18. Kent D. Lee, Steve Hubbard
    Pages 309-310
  19. Kent D. Lee, Steve Hubbard
    Pages 311-321
  20. Kent D. Lee, Steve Hubbard
    Pages 323-330
  21. Kent D. Lee, Steve Hubbard
    Pages 331-357
  22. Back Matter
    Pages 359-363

About this book

Introduction

This clearly structured and easy to read textbook explains the concepts and techniques required to write programs that can handle large amounts of data efficiently.

Project-oriented and classroom-tested, the book presents a number of important algorithms supported by motivating examples that bring meaning to the problems faced by computer programmers. The idea of computational complexity is also introduced, demonstrating what can and cannot be computed efficiently so that the programmer can make informed judgements about the algorithms they use. The text assumes some basic experience in computer programming and familiarity in an object-oriented language, but not necessarily with Python.

Topics and features:

  • Includes both introductory and advanced data structures and algorithms topics, with suggested chapter sequences for those respective courses provided in the preface
  • Provides learning goals, review questions and programming exercises in each chapter, as well as numerous illustrative examples
  • Offers downloadable programs and supplementary files at an associated website, with instructor materials available from the author
  • Presents a primer on Python for those coming from a different language background
  • Reviews the use of hashing in sets and maps, along with an examination of binary search trees and tree traversals, and material on depth first search of graphs
  • Discusses topics suitable for an advanced course, such as membership structures, heaps, balanced binary search trees, B-trees and heuristic search

Students of computer science will find this clear and concise textbook to be invaluable for undergraduate courses on data structures and algorithms, at both introductory and advanced levels. The book is also suitable as a refresher guide for computer programmers starting new jobs working with Python.

Keywords

Algorithms Computational Complexity Data Structures Programming Python

Authors and affiliations

  • Kent D. Lee
    • 1
  • Steve Hubbard
    • 2
  1. 1.Luther CollegeDecorahUSA
  2. 2.Luther CollegeDecorahUSA

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-319-13072-9
  • Copyright Information Springer International Publishing Switzerland 2015
  • Publisher Name Springer, Cham
  • eBook Packages Computer Science
  • Print ISBN 978-3-319-13071-2
  • Online ISBN 978-3-319-13072-9
  • Series Print ISSN 1863-7310
  • Series Online ISSN 2197-1781
  • Buy this book on publisher's site