Algorithmic Thinking: A Problem-Based Introduction

Algorithmic Thinking: A Problem-Based Introduction - Daniel Zingaro

Algorithmic Thinking: A Problem-Based Introduction


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?

Citeste mai mult

transport gratuit

326.33Lei

326.33Lei

Primesti 326 puncte

Important icon msg

Primesti puncte de fidelitate dupa fiecare comanda! 100 puncte de fidelitate reprezinta 1 leu. Foloseste-le la viitoarele achizitii!

Livrare in 2-4 saptamani

Descrierea produsului


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?

Citeste mai mult

De acelasi autor

Parerea ta e inspiratie pentru comunitatea Libris!

Istoricul tau de navigare

Noi suntem despre carti, si la fel este si

Newsletter-ul nostru.

Aboneaza-te la vestile literare si primesti un cupon de -10% pentru viitoarea ta comanda!

*Reducerea aplicata prin cupon nu se cumuleaza, ci se aplica reducerea cea mai mare.

Ma abonez image one
Ma abonez image one