Algorithms are nothing more than step-by-step procedures for solving problems and most algorithms used by programmers have already been discovered, tested, and proven. Those wanting to take a hard pass on the dense multi-page proofs found in most textbooks, will want to read Grokking Algorithms. This fully-illustrated and engaging guide makes it easy to learn how to use algorithms effectively. Grokking Algorithms is a disarming take on a core computer science topic and shows readers how to apply common algorithms to practical problems faced in the day-to-day life of a programmer. It starts with problems like sorting and searching and builds up skills in thinking algorithmically. Then it tackles more complex concerns such as data compression or artificial intelligence. Whether writing business software, video games, mobile apps, or system utilities, readers will learn algorithmic techniques for solving problems that they thought were out of reach. By the end of this book, they will know some of the most widely applicable algorithms, as well as how and when to use them. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.