Python Algorithms deals with some of the most important and challenging areas of programming and computer science in a highly pedagogic and readable manner. It covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real Python programs. 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 also gives a solid understanding of fundamental algorithmic problem-solving techniques. Python Algorithms explains well-known algorithms and data structures built into the Python language, and shows you how to implement and evaluate others. Whether you're a Python programmer who needs to learn about algorithmic problem-solving, or a student of Computer Science, this book will help you to understand and implement classic algorithms, and it will help you create new ones. You'll learn how to: transform new problems to well-known algorithmic problems with efficient solutions, or formally show that a solution is unfeasible
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 learn to implement these efficiently in Python
design and implement new algorithms for new problems, using time-tested design principles and techniques.
Includes bibliographical references and index.