-
I have a data algorithm in the library that you can look up and see if it will help.
-
If you want to learn data structures well, you still need to understand the basic knowledge of textbooks, otherwise it will be nonsense to talk about everything else. Data institutions, one is data, and the other is the operation of data. The key to learning is to understand the design ideas and characteristics of each data structure and the basic operations for it.
After a deep understanding, coupled with enough computer contact, it should not be a problem to learn well.
Hopefully, the above suggestions will help you learn data structures well.
-
First of all, there must be a solid foundation of C C++, and then it is algorithmized. The data structure is very deep, and it is simple to say. If you want to be proficient, I recommend that you go to the library to find the data structure textbook published by Tsinghua University.
The book was written in C++ as the programming language. If this is just a basic course for your general major, you can study the general textbooks of the C language well. The main thing is to be desperately algorithmized, and there are not many anyway.
The back is familiar, and I slowly understand. Data structures are the soul of a computer, and you must learn it well.
-
I think it's better to write a few more programs to help me understand.
-
I know some students who study communication engineering, and they are very troublesome to find a job now, because they are not soft or hard in learning, they are not as good as those in computer science in terms of software, and they are not as good as electronic information in terms of hardware. So I suggest you specialize in one, and the communication students I know are now concentrating on software, and data structures are the foundation of software, so it is very important.
Multi-write programs is a good way to learn data structures, first learn C++ proficiently, and write more programs on memory structures, mainly sequential tables, linked lists, stacks, queues, trees, etc. Graph theory is very rarely tested in the interview (with the exception of search and other directions, Google often tests graph theory), so you can leave it unfocused. The search test is also relatively small (except for the direction of database and search), mainly focusing on binary search and hash table (hash is very important, and the direction of large data processing is particularly much, for example, the hash is specifically tested).
Ranking is the most common test in the interview, and it is necessary to figure out how time complexity and space complexity are calculated. Recursion is also often tested, as long as you consider problems according to people's normal thinking habits, you can easily master recursion.
When learning the memory structure, we should consider why this problem should be implemented with this structure, such as stacks for rollback operations or expression evaluation, queues for transaction operations, linked lists for dynamically expanding memory, sequential tables for random positioning, etc.
There are often some complex algorithms in the data structure book, if you really can't understand it, you can skip it first and wait until you have a certain amount of experience. We in the School of Computer Science felt the same way when we learned about data structures, and found it difficult, but after a year, when I had a lot of experience and written a lot of programs, I didn't find it difficult.
In short, you have to write more programs, not just read the book, and realize the pseudo-** written in the book by yourself, and find some practical examples to implement the data structure.
-
Personally, I feel that there are two stages of data structure learning.
1.In order to cope with the exam.
At this stage, it is mainly through doing questions to consolidate memory and deepen understanding; (You can write a program to deepen your understanding).
2.Programming required.
Data structure is a mature discipline, and most algorithms have standardized implementations, so the focus is to understand the ideas of algorithm authors and lay the foundation for developing their own algorithms in the future.
Of course, by writing programs related to data structures, you can also improve your test-taking ability, after all, combining theory with practice is the king, otherwise it is just on paper!
I would like to introduce you to Yan Weimin's textbook "Data Structure" (C language version), which is currently a classic textbook with a good reputation in China. >>>More
A data structure is the way a computer stores and organizes data. >>>More
These things are expressed in ASCII codes, and then determined by scan input and if statements.
The creation sequence table is as follows:
by the array element a[0..n-1] to create a sequential table l. Each element in a is placed sequentially in a sequential table, and n is assigned to the length field of the sequential table. The algorithm is: >>>More
1) Can't accept the way it's described. The description of data structures is mostly in the form of abstractions, and we are used to using natural language expressions, which makes it difficult to accept the abstract expressions of data structures. More than one student asked me, what exactly is the type of "elemtype" in the book? >>>More