Starting from this section, you will systematically learn about data structures, first of all, you will understand what data structures are.
Up to now, there is no standard definition of data structure. There are many books and ** on the market that explain data structures, and the answer given by some experts about what data structures are:
1) A data structure is a collection of data elements with a structure.
2) Data structure is a discipline that studies the objects operated by computers in non-numerical computing programming problems, as well as their relationships and operations.
3) A data structure is a collection of data elements that have one or more specific relationships with each other.
Each of these answers attempts to interpret the meaning of "data structures" from a different perspective, but unfortunately, only those with some knowledge of data structures can grasp the meaning of these words. For readers who have never been exposed to data structures, they simply don't know what they're talking about, and it's impossible to understand if they're killed.
Many people have been learning data structures for a long time, and they still have a question mark on their faces, and they don't know what the use of learning data structures is, and in the final analysis, they don't understand what data structures are.
Next, I will answer the question "What is the data structure" in plain language.
Tips: If you want to learn data structures systematically, please enter my personal ** xiexuewugithub.IO, with a complete set of data structures and algorithm tutorials, provides a complete and runnable C language program, which is very suitable for beginners with C language foundation.
Data structures, as a separate discipline, only started in 1968. Previously, the content of data structures was scattered throughout other computer courses, such as compilation principles, operating systems, etc.
The data structure is not as complex as you think, and it teaches you one thing: how to store data efficiently.
In a data structure, all information that can be processed by a computer is called data, such as numeric values, characters, images, audio, etc.
Many people think that storing data is a simple thing, and various programming languages provide ways to store data, such as common variables, arrays, etc., and even store data in files. It's not that hard to just store data. The real challenge is to store the data and at the same time store the relationships between the data.
As a simple example, each family has a family tree or genealogy that records information about the lineage and reproduction of a family, such as the family tree diagram in Figure 1
Figure 1 Family tree.
When storing this picture, it is not enough to store only these names, but also to store the relationship between them, such as Zhang Liang is Zhang Ping's father, Zhang Lei's ancestor, and so on.
For example, you must have used navigation software (such as AutoNavi, Tencent Maps, etc.), in order to achieve accurate navigation, the software must store a large amount of data, including roads, buildings, traffic lights and other location information in various provinces, cities, districts and counties, as well as weather information in each region, highway information and so on.
Figure 2 Navigation diagram.
This information is data, and the relationships between the data are intricate, and whether these relationships can be stored correctly directly determines the accuracy of software navigation.
In scenarios such as family tree charts and road information, it is not difficult to store the data itself, but the real difficulty lies in how to store the relationship between the data. By learning the data structure, you will get to many scenarios for storing data, so that you can store data while also storing the relationships between data correctly.
What is a data structure, in my opinion, it's a discipline that teaches you how to store data that has complex relationships.
The idea of data structures to store data (thoughts, ideas) can be implemented in any programming language. In other words, no matter what programming language you know, and no matter what development you're in, if you're working with data, you're bound to use data structures.
Friends who want to systematically learn data structuresxiexuewu.github.ioThis ** has a complete set of data structures and algorithm tutorials, and provides a complete and runnable C language program, which is very suitable for beginners with C language foundation.