About this Book
-
Learn best by being able to recall examples we already know makes recall easier.
-
This book is chock-full of images.
The first three chapters of this book lay the foundations:
Chapter 1
- Binary search
- Big O notation :Analyze the speed of an algorithm.
Chapter 2 - Fundamental data structures
- Arrays
- Linked lists
Chapter 3
- Recursion : A handy technique used by QuickSort.
Algorithms with broad applications
-
Problem-solving techniques
-
Divide and conquer (Chapter 4)
-
Dynamic programming (Chapter 9)
-
Using a Greedy algorithm instead, if there's no efficient solution. (Chapter 8)
-
-
Hash tables (Chapter 5)
-
contains sets of key and value pairs
-
Tips to solve problems
-
Always thinking of using a hash table or modeling as a graph.
-
-
-
Graph algorithms (Chapter 6,7)
- Model a network to calculate the degrees of separation between two things or the shortest route to a destination.
- Breadth-first search (chapter 6)
- Dijkstra’s algorithm (chapter 7)
- Model a network to calculate the degrees of separation between two things or the shortest route to a destination.
-
K-nearest neighbors (chapter 10)
- Simple machine-learning algorithm
-
Next steps (Chapter 11)
- Goes over 10 algorithms that would make good further reading.
Chapter 1
An algorithm is a set of instructions for accomplishing a task.
Binary search
-
A sorted list of elements.
-
Eliminate half the remaining possible every time.