Sale!

Grokking Algorithms 2nd Edition by Aditya Y. Bhargava, ISBN-13: 978-1633438538

Original price was: $50.00.Current price is: $14.99.

Description

Grokking Algorithms 2nd Edition by Aditya Y. Bhargava, ISBN-13: 978-1633438538

[PDF eBook eTextbook] – Available Instantly

  • Publisher ‏ : ‎ Manning
  • Publication date ‏ : ‎ March 26, 2024
  • Edition ‏ : ‎ 2nd
  • Language ‏ : ‎ English
  • 320 pages
  • ISBN-10 ‏ : ‎ 1633438538
  • ISBN-13 ‏ : ‎ 978-1633438538

A friendly, fully-illustrated introduction to the most important computer programming algorithms.

Master the most widely used algorithms and be fully prepared when you’re asked about them at your next job interview. With beautifully simple explanations, over 400 fun illustrations, and dozens of relevant examples, you’ll actually enjoy learning about algorithms with this fun and friendly guide!

In Grokking Algorithms, Second Edition you will discover:

  • Search, sort, and graph algorithms
  • Data structures such as arrays, lists, hash tables, trees, and graphs
  • NP-complete and greedy algorithms
  • Performance trade-offs between algorithms
  • Exercises and code samples in every chapter
  • Over 400 illustrations with detailed walkthroughs

The first edition of Grokking Algorithms proved to over 100,000 readers that learning algorithms doesn’t have to be complicated or boring! This revised second edition contains brand new coverage of trees, including binary search trees, balanced trees, B-trees and more. You’ll also discover fresh insights on data structure performance that takes account of modern CPUs. Plus, the book’s fully annotated code samples have been updated to Python 3.

Foreword by Daniel Zingaro.

Purchase of the print book includes a free eBook in PDF and ePub formats from Manning Publications.

About the technology

The algorithms you use most often have already been discovered, tested, and proven. Grokking Algorithms, Second Edition makes it a breeze to learn, understand, and use them. With beautifully simple explanations, over 400 fun illustrations, and dozens of relevant examples, it’s the perfect way to unlock the power of algorithms in your everyday work and prepare for your next coding interview—no math required!

About the book

Grokking Algorithms, Second Edition teaches you important algorithms to speed up your programs, simplify your code, and solve common programming problems. Start with tasks like sorting and searching, then build your skills to tackle advanced problems like data compression and artificial intelligence. You’ll even learn to compare the performance tradeoffs between algorithms. Plus, this new edition includes fresh coverage of trees, NP-complete problems, and code updates to Python 3.

What’s inside

  • Search, sort, and graph algorithms
  • Data structures such as arrays, lists, hash tables, trees, and graphs
  • NP-complete and greedy algorithms
  • Exercises and code samples in every chapter

About the reader

No advanced math or programming skills required.

Table of Contents:

Inside front cover
Praise for the First Edition
Grokking Algorithms
Copyright
Dedication
contents
front matter
foreword
preface
acknowledgments
about this book
about the author
1 Introduction to algorithms
Binary search
Big O notation
Recap
2 Selection sort
How memory works
Arrays and linked lists
Which is used more, arrays or linked lists?
Selection sort
Example code listing
Recap
3 Recursion
Recursion
Base case and recursive case
The stack
Recap
4 Quicksort
Divide and conquer
Quicksort
Big O notation revisited
Recap
5 Hash tables
Hash functions
Use cases
Collisions
Performance
Recap
6 Breadth-first search
Introduction to graphs
What is a graph?
Breadth-first search
Implementing the graph
Implementing the algorithm
Recap
7 Trees
Your first tree
A space odyssey: Depth-first search
Binary trees
Huffman coding
Recap
8 Balanced trees
A balancing act
Shorter trees are faster
AVL trees: A type of balanced tree
Splay trees
B-trees
Recap
9 Dijkstra’s algorithm
Working with Dijkstra’s algorithm
Terminology
Trading for a piano
Negative-weight edges
Implementation
Recap
10 Greedy algorithms
The classroom scheduling problem
The knapsack problem
The set-covering problem
Recap
11 Dynamic programming
The knapsack problem (revisited)
Knapsack problem FAQ
Longest common substring
Recap
12 k-nearest neighbors
Classifying oranges vs. grapefruit
Building a recommendations system
Regression
Introduction to machine learning
A high-level overview of training an ML model
Recap
13 Where to go next
Linear regression
Inverted indexes
The Fourier transform
Parallel algorithms
map/reduce
Bloom filters and HyperLogLog
HTTPS and the Diffie–Hellman key exchange
Locality-sensitive hashing
Min heaps and priority queues
Linear programming
Epilogue
Appendix A. Performance of AVL trees
Appendix B. NP-hard problems
Decision problems
The satisfiability problem
Hard to solve, quick to verify
Reductions
NP-hard
NP-complete
Recap
Appendix C. Answers to exercises
index
inside back cover

Aditya Bhargava is a Software Engineer with a dual background in Computer Science and Fine Arts. He blogs on programming at adit.io.

What makes us different?

• Instant Download

• Always Competitive Pricing

• 100% Privacy

• FREE Sample Available

• 24-7 LIVE Customer Support