Python Algorithms: Mastering Basic Algorithms in the Python Language
- 9h 44m
- Magnus Lie Hetland
- Apress
- 2010
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 problem-solving 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.
- Well-known 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 well-known 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 time-tested design principles and techniques.
- Speed up implementations, using a plethora of tools for high-performance computing in Python.
About the Author
Magnus Lie Hetland is an associate professor of algorithms at the Norwegian University of Science and Technology, NTNU. Even though he loves learning new programming languages--even quite obscure ones--Magnus has been a devoted Python fan and an active member of the Python community for many years, and is the author of the popular online tutorials “Instant Python” and “Instant Hacking.” His has written publications including Practical Python and Beginning Python, as well as several scientific papers.
In this Book
-
Introduction
-
The Basics
-
Counting 101
-
Induction and Recursion … and Reduction
-
Traversal: The Skeleton Key of Algorithmics
-
Divide, Combine, and Conquer
-
Greed Is Good? Prove It!
-
Tangled Dependencies and Memoization
-
From A to B with Edsger and Friends
-
Matchings, Cuts, and Flows
-
Hard Problems and (Limited) Sloppiness