Skip to product information
Understanding Algorithms with Pictures
Understanding Algorithms with Pictures
Description
Book Introduction
Algorithms and data structures, can they be expressed and understood this easily?
The "Algorithm Encyclopedia" app, with 2.5 million downloads worldwide, is now available as a book, a revised and second edition of the Japanese Amazon bestseller!


Algorithms are different even though they achieve the same goal.
Some algorithms have a short execution time but use a lot of memory, while others have a long execution time but use little memory.
Knowing a variety of algorithms means you have more options when creating programs.
To execute an efficient algorithm, you must use an appropriate data structure.
In other words, the ability to select the optimal algorithm and data structure for a given situation is one of the conditions for becoming a good programmer.


This book was written based on an application called 'Algorithm Encyclopedia'.
The app uses animations to explain the algorithm's behavior, but this book uses plenty of illustrations to make it as easy to understand as the app itself.
Additionally, we have newly written basic content that you need to know before learning algorithms, such as ‘What is an algorithm?’, ‘Computation time of algorithms’, and ‘Basics of graphs’, which are not included in the app.
The revised second edition adds 'data compression', which was not covered in the first edition and the app, and newly adds graph problems such as 'minimum spanning tree' and 'matching', and 'string matching'.

  • You can preview some of the book's contents.
    Preview

index
The basics of the introduction algorithm
What is the 0-1 algorithm?
0-2 How to measure calculation time

Chapter 1 Data Structures
1-1 What is a data structure?
List 1-2
1-3 array
1-4 stacks
1-5 queues
1-6 Hash Table
1-7 hips
1-8 Binary Search Tree

Chapter 2 Sort
What is 2-1 alignment?
2-2 Bubble Sort
2-3 selection sort
2-4 Insertion sort
2-5 Heap Sort
2-6 Merge Sort
2-7 Quick sort

Chapter 3 Array Search
3-1 Linear search
3-2 Binary Search

Chapter 4 Graph
4-1 What is a graph?
4-2 Breadth-First Search
4-3 Depth-first search
4-4 Bellman-Ford Algorithm
4-5 Dijkstra's Algorithm
4-6 A*
4-7 Kruskal's Algorithm
4-8 Prim's Algorithm
4-9 Matching Algorithm

Chapter 5 Security Algorithms
5-1 Security Algorithm
5-2 Password Basics
5-3 Hash function
5-4 Symmetric key encryption method
5-5 Public Key Cryptography
5-6 Hybrid encryption method
5-7 Diffie-Hellman Key Exchange
5-8 Message Authentication Code
5-9 Digital Signature
5-10 Digital Certificates

Chapter 6 Clustering
6-1 What is clustering?
6-2 k-means algorithm

Chapter 7 Data Compression
7-1 Data Compression and Encoding
7-2 Run Length Encoding
7-3 Uniquely Decodable Code
7-4 Instantaneous code
7-5 half-man code

Chapter 8 Other Algorithms
8-1 Euclidean Algorithm
8-2 Prime Number Determination Method
8-3 String Matching
8-4 Knuth-Morris-Pratt Algorithm
8-5 PageRank
8-6 Tower of Hanoi

Search

Detailed image
Detailed Image 1

Publisher's Review
Just reading is enough!
Algorithms and data structures that are easy and quick to understand!


An algorithm is a sequence of calculations or operations, or a sequence of steps for solving a problem using a computer.
You can solve problems such as 'sort a list of numbers in descending order' and 'find the shortest path from starting point to destination'.
Computers are fast at executing basic instructions, such as addition or storing values ​​in memory addresses, but they are not good at executing complex instructions.
For a computer, a problem like 'sorting a list of numbers into smaller order' is a complex task.
Algorithm design is the process of combining basic instructions so that a computer can execute this complex sequence of operations.

This book explains the operating principles of 33 basic algorithms and 7 data structures in an easy-to-understand, friendly, and detailed manner, 100% illustrated.
This book will help you visualize the logic, process, and operation of algorithms by following the process in pictures, which will be of great help in understanding the ideas and structure of algorithms.
Let's learn the fun world of algorithms, essential for writing good code, in an easy and enjoyable way, through illustrations.

[A word from the author]
This book is designed to help even beginners easily understand algorithms and data structures.
An algorithm is a sequence of calculations to solve a problem, and corresponds to all steps of a computer program.
Even when solving the same problem on a computer, the computational time until the answer is obtained varies greatly depending on whether an efficient algorithm is used or not.
And it's also important to use appropriate data structures for that.


This book is an introduction to algorithms.
The world of algorithms is wider and deeper.
If reading this book piques your interest in algorithms, I encourage you to delve deeper.

[Translator's Note]
It is the developer's destiny to understand and apply constantly emerging algorithms and terminology.
To live a stress-free life as a developer, it's crucial to have the confidence to easily understand new terms and algorithms.
Once you understand it, you must face it head on and confront it first with the confidence that it is nothing special.
To have this confidence, it is a good idea to have a solid understanding of the representative algorithms.

Also, before looking at the specific parts of the algorithm, it is a good idea to understand its principles abstractly.
In particular, it is very helpful to understand the changes in the state managed by the algorithm by tracking them in pictures and numbers.
So, for anyone who wants to study algorithms, I recommend reading this book before any other book.
I recommend an approach where you can quickly and easily understand with the help of pictures, and then learn more specific content.
GOODS SPECIFICS
- Date of issue: April 30, 2024
- Page count, weight, size: 264 pages | 400g | 152*225*11mm
- ISBN13: 9791140709403

You may also like

카테고리