Algorithmic Thinking: A Problem-Based Introduction

Authors: Zingaro, Daniel
Publisher: No Starch Press
BISAC/Subject: COM051060, COM051300, COM051390
ISBN: 9781718500815, Related ISBNs: 1718500807, 1718500815, 9781718500808, 9781718500815
Classification: Non-Fiction
Number of pages: 408,
Audience: General/trade
Synopsis: A hands-on, problem-based introduction to building algorithms and data structures to solve problems with a computer.

Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions like USACO and IOI. You'll learn how to classify problems, choose data structures, and identify appropriate algorithms. You'll also learn how your choice of data structure, whether a hash table, heap, or tree, can affect runtime and speed up your algorithms; and how to adopt powerful strategies like recursion, dynamic programming, and binary search to solve challenging problems.

Line-by-line breakdowns of the code will teach you how to use algorithms and data structures like:
    The breadth-first search algorithm to find the optimal way to play a board game or find the best way to translate a book
    Dijkstra's algorithm to determine how many mice can exit a maze or the number of fastest routes between two locations
    The union-find data structure to answer questions about connections in a social network or determine who are friends or enemies
    The heap data structure to determine the amount of money given away in a promotion
    The hash-table data structure to determine whether snowflakes are unique or identify compound words in a dictionary

NOTE: Each problem in this book is available on a programming-judge website. You'll find the site's URL and problem ID in the description. What's better than a free correctness check?
Sign up for our literacy platform for reading at home

LightSail includes up to 6,000 high interest, Lexile aligned book titles with every student subscription. Other titles are available for individual purchase.

Watch the power of

Lightsail in action

×

SUPPORT GROWING READERS

Immediately Engage Students
Immediately Engage Students
Simple intuitive design has classrooms reading within minutes.
Exponentially Grow Reading Time
Exponentially Grow Reading Time
Students love the LightSail experience and naturally spend more time reading.
Accelerate Literacy Development
Accelerate Literacy Development
Students reading 25 minutes a day on LightSail are seeing 2+ years of Lexile growth in a single year.

LightSail Education is a comprehensive Lexile and standards-aligned, literacy platform and digital e-book library. Including multimodal learning functionality and featuring books from leading publishers, LightSail holistically assesses and nurtures each student on their reading and writing-to-learn journey, throughout elementary, middle, and high school.

*LightSail offers a 2,000 or a 6,000 title bundle with its student subscriptions. Other titles are available for individual purchase.