What is a data structure ?, Data structure?
1. Introduction
It has been more than half a year since I learned the data structure in March this year, and it's quite comfortable. What should I do? I have been working for a while, I have done many projects, large and small, and now I am back to school (my primary education is too low ), what I do at work is java, but it is also exposed to mainstream languages on the market. There is only one kind of feeling. A computer language is a tool for calling between different types. When learning these languages, I don't feel much, that is, I am constantly learning grammar, doing projects, and accumulating experience. But I personally feel that I can only write code mechanically, the current situation cannot be broken through. I remember the previous saying, "I have a sense of accomplishment only when I learn data structures." Now, it makes sense to think about this sentence, which is a little similar to what I mentioned above, there is a lot of knowledge in the data structure, such as continuous storage, chain storage, binary tree, and forest. It is difficult to tell the truth. Not to mention whether the code can be easily written, these theoretical concepts alone are not traceable. However, every time you encounter a knowledge point getting stuck and then suddenly solves it, you will have a sense of accomplishment. Does other languages feel like this? The answer must be yes, but there are few. Basically, it is mechanical grammar and mechanical project creation. The whole data structure will make you feel this way. So I feel that from the perspective of Data Structure, all languages are the same and I will explain in one sentence: "program = Data Storage (Data Structure) + Data Operations (algorithms) + a language that can be executed by a computer ". As you can see, java, php, and c # are all basic courses. Of course, I also learned a general language, these words are mainly used to express the status of the data structure. Therefore, I personally think it is necessary to learn the data structure well. Skip this step if you don't want.
2. What is a data structure?
Personal definition: data structure solves the problem of storing one-dimensional and two-dimensional data in one-dimensional mode. Because our computer memory is a one-dimensional linear table, all our data must be stored in the memory. In real life, many of them are two-dimensional data (there must be one-dimensional data). The problem to be solved in the data structure is how to store two-dimensional data in a one-dimensional linear table.
Definition given by the Instructor: stores a large number of complex data types (individual) and specific storage structures (relationships between individual and individual) in the memory.
Summary: Data Structure = relationships between individuals and individuals
How can this problem be summarized?
For example, if the employee information of a company is stored, the employee information is compared to the individual employee information. If the employee belongs to a certain department
While storing the employee's department information, it also involves storing the relationship between the individual and the individual. Therefore
In the data structure, two types of problems are solved. One is the storage of individual, and the other is the storage of the relationship between individual and individual.
3. What is the relationship between data structures and algorithms?
Many textbooks relate the two. What is the relationship between the two? As mentioned above, the data structure is to study the relationship between an individual or an individual and an individual. For example, there are many data types in the data structure, such as arrays, linked lists, queues, and stacks. These data types correspond to different storage types in reality, if you want to perform some operations on it (add an element and delete an element), there are different operation methods. These different operation methods are different algorithms, if there are many data types in the data structure, there will be a lot of algorithms accordingly. Therefore, algorithms are also very important when learning data structures.