Follow the public account “Programmer Book List”
Add a “star mark” to take you to read good books every day!
To learn programming, data structure is the basic knowledge you must master, so what is data structure?
In fact, data structure is a mathematical model used to describe the data stored in the computer, because there is a lot of messy data stored in the computer, so it needs different data structure to describe.
Now that we know the basics, why do we need to learn data structures?
In the design of many types of programs, the choice of data structure is a fundamental design consideration. The construction experience of many large systems shows that the difficulty of system implementation and the quality of system construction depend heavily on whether the optimal data structure is chosen. Many times, the algorithm is easy to derive once the data structure is determined. Sometimes things work the other way around, and we choose data structures based on specific algorithms to fit into. In either case, choosing the right data structure is very important.
When the data structure is chosen, the algorithm is determined, and it is the data, not the algorithm, that is the key factor in the construction of the system. This insight has led to the emergence of many software design methods and programming languages, among which object-oriented programming languages are one of them. In other words, the selection of data structure is often the core to solve the problem. For example, when we do an algorithm problem, we often need to determine the data structure first, and then think about how to solve the problem according to the data structure.
Algorithms are useless if you don’t have a basic knowledge of data structures. Many times, even if you use some packaged programming API, you don’t know the implementation principles behind it, such as hashMap, LinkedList and other Java collection classes.
So, for programmers, data structure is a fundamental, and today we are going to recommend a list of books that can help you learn data structure.
Data structure book list
Big talk about data structures
“Big talk data structure” for the super bestseller “big talk design mode” author Cheng Jie three years to launch the kingpin! Take a computer teacher teaching as the scene, explain the knowledge of data structure and related algorithms.
The whole article is narrated in an interesting way, citing a variety of life knowledge analogy, and make full use of graphic language to reflect the abstract content, the data structure involved in some classical algorithms to do line by line analysis, multi-algorithm comparison. Compared with similar data structure books on the market, this book is interesting and easy to read, and the algorithm is detailed and profound, which is a very suitable reading for self-study.
Author’s brief introduction
Cheng Jie, a reader as a very suitable for writing IT technology book guy. Author of Design Patterns with Big Words. Since its publication at the end of 2007, this book has been printed for 9 times in simplified Chinese version and 6 times in traditional Chinese version, which has achieved good results and created an interesting style of explaining IT knowledge suitable for Chinese reading.
Interesting data structures
This book is written based on C++ language, introducing the basic content of algorithm complexity calculation and data structure from interesting stories, covering linear structure, tree structure and graph structure, including linked list, stack and queue, tree and graph application, etc. The book also covers basic applications of data structures (including various lookups, sorts, etc.) and advanced applications (including priority queues, parallel lookup sets, B-trees, B+ trees, red-black trees, etc.).
The abstract data model is simplified through a large number of diagrams, the language is easy to understand, and interesting examples help readers easily grasp the data structure.
Author’s brief introduction
Xiaoyu Chen is an associate professor and senior programmer at Nanyang Institute of Technology. Her research interests include intelligent computing, data mining and machine learning. She mainly teaches “Algorithm Design and Analysis” and “Artificial Intelligence”.
Python data structure and algorithm analysis
Understanding data structures and algorithms is a prerequisite for a thorough understanding of computer science. As Python becomes more widely used, Python programmers need to implement data structures and algorithms similar to those of traditional object-oriented programming languages.
This book is the first of its kind to describe data structures and algorithms in Python. It brings together the author’s years of practical experience to thoroughly explain how to implement algorithms efficiently in the Python environment through a series of storage mechanisms. Through this book, readers will gain a deep understanding of Python data structures, recursion, search, sorting, trees and graphs, and much more.
Bradley N. Miller is professor emeritus of Computer Science at Lutheran College, USA. He is the recipient of the COMPUTER Society Award for Software Systems. Runestone Interactive, the Interactive textbook platform he founded, works with more than 600 educational institutions around the world. David L. Ranum is a cognitive software engineer at IBM Watson. He has a Ph.D. in medical informatics. He has taught computer science courses at Luther College for nearly 30 years.
Illustrated data structures: Using Java (available in other languages)
This is a Java program language to explain the concept of data structure teaching materials. Book contents understandable, the use of large and rich graphic and examples, complex of abstract theory, starting with the basic data structure, and interpretation to Java tool array structure, stack, list, queue, sorting, search and other important concepts, leading readers focusing easily into the learning areas of data structure.
Illustrated Data Structures: Using Java has a complete content structure, clear logic and rich illustrations to illustrate basic concepts and applications, effectively improving readability. The important theory of data structure is realized by Java programming language, and the connotation of data structure is illustrated by example program. The Eclipse Java ID tool is used to integrate compilation, execution, testing and debugging functions. Emphasis on doing while learning, combined with download files, to give the most complete support.
The author hu Zhaomin, because the author has been engaged in information education and writing for a long time, is concise and logical in the expression of words, and arranges a large number of exercises for readers to test the learning results.
Today’s problems
How do you get started and learn about data structures?