Algorithmic Thinking, 2nd Edition
Knowing how to design algorithms will take you from being a good programmer to a great programmer. This completely revised second edition teaches you how to design your own rocket-fast, right-for-the-task algorithms-minus the proofs and complex math. Forget the useless pseudocode and played-out examples you've seen in other books. Author and award-winning educator Dan Zingaro draws problems straight from online programming competitions to rigorously teach you all of the heavyweights you need to know, like hash tables, recursion, trees, graphs, and heaps. As he guides you to the perfect algorithmic solution for each unique programming puzzle, you'll build up a toolkit of go-to algorithms for quickly and correctly solving any problem you come across. The second edition features several entirely new chapters on dynamic programming and randomized algorithms, as well as more effective problems and enhanced explanations. Code examples are provided using the C language. Learn how to: Classify problems, choose data structures, and identify appropriate algorithms; Choose between data structures like hash tables, heaps, or trees, based on how they affect runtime and speed; Adopt powerful strategies like recursion, dynamic programming, and binary search to solve challenging problems; Apply the breadth-first search algorithm to find the optimal way to play a board game, Dijkstra's algorithm to determine the fastest routes between two locations, and many more.
Auteur | | Daniel Zingaro |
Taal | | Engels |
Type | | Paperback |
Categorie | | Computers & Informatica |