HomeComputers & TechnologyAlgorithmic Thinking: A Problem-Based Introduction
Skip to product information
1 of 1

Algorithmic Thinking: A Problem-Based Introduction

paperbackDecember 15, 2020
Regular price $35.29 USD
Regular price Sale price $35.29 USD
Sale Sold out
Shipping calculated at checkout.
Secure Checkout
Quality Guaranteed
New In Stock
ISBN-13: 9781718500808 ISBN-10: 1718500807
Publisher
No Starch Press
Binding
paperback
Published
December 15, 2020
Weight
1.7 lbs
Dimensions
23.60×2.40×17.90 cm

About this book

Algorithmic Thinking: A Problem-Based Introduction by Zingaro, Daniel. paperback edition. ISBN: 9781718500808.

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. Youll learn how to classify problems, choose data structures, and identify appropriate algorithms. Youll 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 Dijkstras 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. Youll find the sites URL and problem ID in the description. Whats better than a free correctness check?