DESCRIPTION Algorithms 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 Knuth's brilliant but impenetrable theories, and 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. KEY SELLING POINTS Disarming take on a core computer science topic Carefully presented examples Helpful diagrams and fully annotated code samples AUDIENCE This easy-to-read, picture-heavy introduction is suitable for self-taught programmers, engineers, or anyone who wants to brush up on algorithms. Code examples are written in Python. ABOUT THE TECHNOLOGY Algorithms are nothing more than step-by-step procedures for solving problems. They can make writing code faster, or make it possible to write code that might not have been able to be written without them.