Algorithms: 3 Books in 1: Practical Guide to Learn Algorithms for Beginners + Design Algorithms to Solve Common Problems + Advanced Data Structures for Algorithms (Unabridged)
Book One: Have you ever wondered how a programmer develops games and writes code without having to think too much? Do you want to know what makes a programmer confident about the code they write? Do you want to learn how programmers use algorithms to determine how to structure their programs before they develop it? Then this is the book for you.
An algorithm is a set of rules or instructions you provide to a system. The system performs a specific process to answer a question using these instructions. As an amateur or expert, it is important for you to understand what an algorithm is and how you should define it. Once you learn to develop an algorithm, you can easily learn to develop code to execute that algorithm. Throughout this book, you will learn about the following:
Algorithms and their characteristics
How you should define the algorithm
Types of algorithms
Analyzing an algorithm based on time and space complexities
Writing code keeping an algorithm in mind
This book will also show you how to implement the sorting and searching algorithms using C and Java programming languages, since these are the most common languages used by programmers. Bear in mind an algorithm is only a set of instructions, and this means you can use an algorithm to write code using different programming languages. You will only need to understand the properties of the programming language and use the right syntax.
Book Two: Are you interested in furthering your knowledge of algorithms? Do you want to learn how they work for real-world problems? Then you've come to the right place. This guide will walk you through algorithm design before digging into some of the top design techniques.
Here's what you will learn:
The steps involved in designing an algorithm
The top algorithm design techniques
The divide and conquer algorithm
The greedy algorithm
The branch and bound algorithm
The randomized algorithm
Recursion and backtracking
And everything that goes with them.
Included are plenty of algorithm designs and code implementations to show you how it all works.
Book Three: Are you studying data science and want to take your learning further? Data structures are an integral part of data science, machine learning, and algorithms, all aimed at solving programming challenges that might seem insurmountable at the outset. Advanced Data Structures for Algorithms builds on your current knowledge, taking your learning much deeper and teaching you how to solve even the trickiest of challenges.
This audiobook has been divided into four parts. Part one covers advanced lists, including:
An overview of linked lists
Doubly linked lists
XOR linked lists
Unrolled linked lists
Part two covers trees, including:
Part three discusses disjoint sets or union-finds, as they are sometimes known.
Part four covers heaps and priority queues, including:
A brief discussion on binary heaps
You’ll find plenty of code examples to help you make sense of it all.