Online Library TheLib.net » Algorithmic Thinking: A Problem-Based Introduction
cover of the book Algorithmic Thinking: A Problem-Based Introduction

Ebook: Algorithmic Thinking: A Problem-Based Introduction

Author: Daniel Zingaro

00
08.02.2024
0
0
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?

Brief Contents
Contents in Detail
Foreword
Acknowledgments
Introduction
Chapter 1: Hash Tables
Chapter 2: Trees and Recursion
Chapter 3: Memoization and Dynamic Programming
Chapter 4: Graphs and Breadth-First Search
Chapter 5: Shortest Paths in Weighted Graphs
Chapter 6: Binary Search
Chapter 7: Heaps and Segment Trees
Chapter 8: Union-Find
Afterword
Appendix A: Algorithm Runtime
Appendix B: Because I Can't Resist
Appendix C: Problem Credits
Index

Download the book Algorithmic Thinking: A Problem-Based Introduction for free or read online
Read Download
Continue reading on any device:
QR code
Last viewed books
Related books
Comments (0)
reload, if the code cannot be seen