DownloadThe Portobello Bookshop Gift Guide 2024

Algorithmic Thinking

A Problem-Based Introduction

Daniel Zingaro author

Format:Paperback

Publisher:No Starch Press,US

Published:14th Jan '21

Should be back in stock very soon

Algorithmic Thinking cover

This book serves as a practical guide to mastering algorithms and data structures, particularly useful for aspiring programmers. Algorithmic Thinking provides hands-on problem-solving techniques.

In Algorithmic Thinking, readers are introduced to the essential concepts of algorithms and data structures through a practical, problem-based approach. This book emphasizes hands-on learning, encouraging readers to engage with challenging topics such as recursion, dynamic programming, and various data structures, including heaps and hash tables. By focusing on real-world applications, the author aims to equip readers with the skills needed to effectively solve computational problems.

The text is designed to be accessible, with all code presented in C, the preferred language for many programming competitions. This choice not only aids in clarity but also allows readers to see the direct application of algorithms in a competitive context. Each chapter builds upon the last, reinforcing concepts and demonstrating how complex problems can often be reduced to simpler algorithmic challenges, particularly those involving graphs.

Through Algorithmic Thinking, readers will gain a deep understanding of how to approach algorithmic problems methodically. The absence of pseudocode means that every example is grounded in actual C code, ensuring that readers can easily implement the concepts discussed. This practical focus makes the book an invaluable resource for anyone looking to enhance their programming skills and algorithmic knowledge.

“A good choice for anyone who needs to understand and implement algorithms.”
—RedGreenCode

“With Zingaro as a tutor by your side, you'll learn, through practice on challenging competition problems, a repeatable process for figuring out and deftly applying the most appropriate algorithmic tools for the job. You'll learn it all from a book that exudes clarity, humor, and just the right dose of Canadian pride. Happy problem-solving!”
Dr. Tim Roughgarden, Professor of Computer Science at Columbia University

"A clear and engaging text . . . By presenting problems first and their algorithm/data structure solutions later, it shows us exactly why those solutions are useful and how they fit into the big picture. . . . Far too many textbooks present solutions fully-formed with no mention of the dead ends and too-complicated solutions you’d hit along the way. But Algorithmic Thinking takes you from the initial idea to the final breakthrough, setbacks and all. Problem solving is a raw, real journey, and this book captures its spirit perfectly. I highly recommend it."
—Ava Pun, medal winner in the International Olympiad in Informatics Programming Competition

"The strength of the book is that the process of discovering and improving algorithms is described in detail and various different approaches are analyzed. Compared to traditional textbooks, there are also interesting topics that are not usually covered . . . Overall, the book is clearly written, the topics are well-chosen, and the book is a good introduction to some important competitive programming techniques."
—Antti Laaksonen, Olympiads in Informatics

ISBN: 9781718500808

Dimensions: unknown

Weight: unknown

408 pages