This book uses Python to introduce folks to programming and algorithmic thinking. It 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 in a highly readable manner. It 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.
If you are a Python lover and looking to learn EVERYTHING you need to learn about the Python approach to algorithm design and analysis, this book is exactly what you need.