A letter from the employer to the computer students

Source: Internet
Author: User

I went to recruit again this morning. With the recruitment experience of the previous period, I had to say nothing.
  
We hope to find people who can work, that is, those who can compile programs. But I feel that the number of people who have just graduated from a prestigious school is very low, it may not exceed 1%.
  
Many people have said that they have not participated in practical projects, have no experience, and want to learn during their work. At the beginning, I thought that as the number of interviewees increases, my views have gradually changed as the number of newcomers increases.

Related Articles: Dr. Li's letter to Chinese Students

I would like to talk about the passing of the contestant from the division program in my mind.
  
If you want to compile the program for a living, then the university is your most important place to accumulate experience. On the contrary, the work unit can accumulate little or no more.
  
In the university, there are two most important courses, one is the compilation principle, and the other is the data structure. The courses of both courses are not important. What is important is the curriculum design, that is, the question that the teacher asked you to do on the computer. For the hundred people I interviewed during this period, I think the design of these two courses is either directly copied to others, the course is either a pass-through course [only a real gun has been used]. In fact, these two courses are the most fundamental content of all the learning content in your university to train the programming skills, it is also a learning opportunity that you will never touch in society. No matter how expensive a training institution is, it is impossible to provide you with the depth of training for these two courses, I have seen more than 10 thousands or 20 thousands contestants who have spent one year in various forms of training institutions after graduation. You have learned 10 thousand framework configuration methods, it is not as meaningful as you are in college.
  
The Course Design of compilation principles generally requires a lexical analyzer or syntax analyzer. The most fart is that you need to make a mathematical formula for Inverse Polish parsing. In my opinion, both lexical analyzer and syntax analyzer can be used, it is best to support various types of operations, such as logical operations. If the course design can be completed independently, you can create an integrated computer thinking method in your brain. The most important thing is that this process allows you to learn how to face a complex problem, the benefits of solving problems through various computer languages are no longer listed. In fact, the complexity of algorithms in any training you take after graduation is not comparable to that in this course.
  
There are two key points in the Course Design of Data Structure. One is the data structure and algorithm itself. here we need to understand and learn the main content of loop and recursion. In fact, if you do a good job above, these are not too many problems. Learning the application of various data structures is still of some significance. The second most important purpose of training is how to express problems in computers, many people told me that my course design is binary tree sorting, And I input a bunch of numbers myself, the output is to arrange the numbers and then output them to the screen, and faint. Then, let's talk about an example of the tower of Hanoi:

The algorithm of the tower itself is only 20 rows, which is not easy to understand, but is not difficult to understand. So, if you want to do something and express the tower, what should you consider?

First of all, we need to consider how many towers, each plate, should be expressed with what data structure? This is a key issue. We need to be able to map the tower and the plate to the array and the elements in the array to think about the problem, in fact, too many people have no way to complete this conversion in the brain.

Secondly, we need to know which elements may change. The number of plates is the simplest element to change. Is there anything else?

Yes, the speed of movement. If you move too fast, no one can see clearly. If you do not do anything, at least two elements must be changed. One is the speed of movement, one is the number of dishes.

Well, it's your turn to express it. If you're a cow, you will draw a plate with holes on the stick. If not, you will wear a horizontal line and move it on the vertical line, what about a cow ?? If not, the result of each step is acceptable.

Well, how can we draw it out? At this time, you need to figure out how to strip on the screen. This is simple and important: How to erase a line and not erase the point of the stick, this is a problem.

After all the above problems are solved, it is very important to compile programs in any language. C, Pascal, Java, or any language, an animation with two parameters demonstrates that Dongdong of the tower of Hanoi was born, and [I spent an hour and a half]
  
In the course of Data Structure Learning, If you can achieve the above depth on four or five questions, I believe you are absolutely welcome.
  
If the above two courses are designed to be independently completed, the income within two or three years after graduation will inevitably exceed five thousand. If you are in Beijing and Shanghai, you can certainly exceed 10 thousand.

Reprinted on http://www.pconline.com.cn/pcjob/rs/zc/0702/969724.html

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.