A Common-Sense Guide to Data Structures and Algorithms in Python, Volume 1 (PragProg)

Big O Notation can make your code faster by orders of magnitude. Get the hands-on info you need to master data structures and algorithms for your daily work.


Jay Wengrow @jaywengrow

edited by Katharine Dvorak @katied

If you thought data structures and algorithms were all just theory, you’re missing out on what they can do for your Python code. Learn to use Big O notation to make your code run faster by orders of magnitude. Choose from data structures such as hash tables, trees, and graphs to increase your code’s efficiency exponentially. With simple language and clear diagrams, this book makes this complex topic accessible, no matter your background. Every chapter features practice exercises to give you the hands-on information you need to master data structures and algorithms for your day-to-day work.

This new edition uses Python exclusively as its language for all code implementations, in both the main text as well as the exercises and solutions. Python has its own unique set of capabilities and constraints, so all the algorithms have been optimized for use in Python. Additionally, all Python code now follows the PEP 8 style guide and runs equivalently in both Python versions 2 and 3.

Algorithms and data structures are much more than abstract concepts. Mastering them enables you to write code that runs faster and more efficiently, which is particularly important for today’s web and mobile apps. Take a practical approach to data structures and algorithms, with techniques and real-world scenarios that you can use in your daily production code. The Python edition uses Python exclusively for all code examples, exercise, and solutions.

Use Big O notation to measure and articulate the efficiency of your code, and modify your algorithm to make it faster. Find out how your choice of arrays, linked lists, and hash tables can dramatically affect the code you write. Use recursion to solve tricky problems and create algorithms that run exponentially faster than the alternatives. Dig into advanced data structures such as binary trees and graphs to help scale specialized applications such as social networks and mapping software. You’ll even encounter a single keyword that can give your code a turbo boost. Practice your new skills with exercises in every chapter, along with detailed solutions.

Use these techniques today to make your Python code faster and more scalable.

Jay Wengrowis an experienced educator and software engineer. He is the founder of Actualize, an award-winning US coding bootcamp that has helped hundreds of people from all backgrounds launch their careers as software engineers. He is passionate about making software development more accessible by breaking the complex down into its simpler, easier parts.

Don’t forget you can get 35% off with your Devtalk discount! Just use the coupon code “devtalk.com" at checkout :+1: