
Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problemsolving techniques.

The book deals with some of the most important and challenging areas of programming and computer science, but in a highly pedagogic and readable manner.

The book covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real Python programs.

Wellknown algorithms and data structures that are built into the Python language are explained, and the user is shown how to implement and evaluate others himself.
What you’ll learn

Transform new problems to wellknown algorithmic problems with efficient solutions, or show that the problems belong to classes of problems thought not to be efficiently solvable.

Analyze algorithms and Python programs both using mathematical tools and basic experiments and benchmarks.

Prove correctness, optimality, or bounds on approximation error for Python programs and their underlying algorithms.

Understand several classical algorithms and data structures in depth, and be able to implement these efficiently in Python.

Design and implement new algorithms for new problems, using timetested design principles and techniques.

Speed up implementations, using a plethora of tools for highperformance computing in Python.
Who this book is for
The book is intended for Python programmers who need to learn about algorithmic problemsolving, or who need a refresher. Students of Computer Science, or similar programmingrelated topics, such as bioinformatics, may also find the book to be quite useful. 


