Follow these steps to solve the problem, and you can become the king in two months

First public account : bigsai
reply " bigsai " to receive pdf learning resources, reply to " enter the group " and punch in to become the king

Preface

Recently, many friends asked me how to get started with data structures and algorithms, or how to solve problems. Many people also said that they are quite confused . Today, combining personal direct and indirect experience, I will give you a set of suggestions from beginning to end. Of course, this suggestion is that if the ACM boss sees not to spray ha, it is recommended that people in the development direction take this path.

image-20201030213117283

If you are a freshman and have a good language foundation, you can take this path. If you are a sophomore, then this path is just right for you. If you are a junior, then you'd better speed up the selection of the essence to complete. If you are working or want to improve yourself, this is a good way.

Bronze Silver (15 days)

Step by step, even if he is the king, he has risen step by step from bronze. And our bronze is not under the pressure of the king. We don't understand anything, we can only explore everything. If we can't find a good road, we may have been bronze for a long time (hahaha, are you always bronze?). Let's see how to break through bronze and silver?

What language foundation do I need to get started?

Input and output, multiple input, if, for loop, array, string, etc. + simple logic.

Is this really enough? Really, the purpose of this stage is to be able to deal with simple logic problems.

How many questions do you have? Where to brush it? Here are two recommendations for you.

The first place: c language network (suitable for bronze)

The c language network is especially suitable for Xiaobai, the previous questions are relatively simple and especially suitable for entry. Suitable for beginners in Xiaobai to enjoy the feeling of ac.

image-20201030191731441

Second place Hangzhou Electric Page 11 (more strong recommendation for bronze and silver)

The topic here is all about memory. It is more suitable for everyone to get started. Of course, there are 100 questions on page 11 of Hang Dian, there is no need to do so many questions, you can pick a simple and ordinary one.

image-20201030193443505

How many questions will be brushed at this stage, and how long will it take?

It shouldn't be too long, it mainly depends on the degree of mastery. It is recommended for 1-2 weeks. Of course, the time spent every day is different and the cycle is different. The amount of questions is guaranteed to be around 40 questions . If it feels easier, you can reduce it appropriately. There are always so many talented people who can easily break away from bronze, silver and hit gold, right?

Of course, at this stage, many veterans may feel more uncomfortable, because the first time you use computer thinking to think about a problem, it may feel more difficult, but listen to me: ** Keep going, just fine, it will always pass! **It may take you a long time for one question, and it may be difficult for you to start. You can try to read other people's code and see other people's ideas.

Gold Platinum (15 days)

At this stage, he is a big man in the eyes of Bronze, and he is still a little white in the eyes of Diamond Star. This stage is not simple logic, but involves some algorithms and logic. Need to think carefully.

The content to be mastered at this stage are: Java's List, Map, Set, StringBuilder, Java's api call sorting, class sorting (comparator interface), linked list, simple greedy, recursion, entry-level dp (up to a violent), etc.

This part is mainly to exercise logic, so that I have the ability to deal with problems that are not complicated in normal logic, and improve my hands-on and code capabilities. **It gives you the ability to find out what you see with violence.

Of course, at this stage, I also recommend two places to brush questions:

Niuke pat Grade B column

The column of pat B grade is recommended here. It's not because of how difficult pat level B is, but pat level B requires thinking and logic to deal with string problems. This process allows you to improve your coding and logic skills, because we often may actually encounter some character processing, and we need to have this ability. It is not recommended to go to the PTA official to finish the 30 questions for Level B. It is almost the same. Many people may be harder in this part.

Many people like me, my roommate, etc. may not be able to do a single question for a long time when I first did it , so do n't give up if you encounter difficulties in the early stage. Be sure to complete these 30 questions. 15 points here is relatively simple, 20 points are average, 25 points are usually not difficult but more complicated, you know, it is the kind of trouble that makes you want to move, but don't be lazy.

image-20201030201224705

Some questions of Hangdian (suitable for platinum players)

One. I will be able to process the string (2 days, 6 questions)

​ 2072、2081、2093、2091、1004、2057

two. Simple Math Questions (4 days, 12 questions)

​ 2031、2033、2070、2071、2075、2089、2090、2092、2096—2099

three. If you want to play, play the Tower of Hanoi (3 days, 5 questions)

​ 1995、1996、2064、2077、2175

four. As easy as math (5 days, 8 questions)

​ 1108、2138、1713、1722、2136、2504、1717、1125

With reference to the sorting of 671 bosses , the author followed this procedure at the beginning. Some of the topics exercised their thinking and were a little more brain-intensive, but the overall difficulty was good.

Diamond Star (30 days)

This part is the advanced stage of the algorithm. Maybe you can say a few words to the acm boss after this stage of energy saving, and then pretend to be the boss in front of Xiaobai.

There are many things to master in this part. I will list some frequently encountered algorithms: Greedy algorithm, backtracking algorithm, dfs, bfs, dp, divide and conquer algorithm, some number theory algorithms (fast power, Euclidean, extended Euclidean There is the most), full arrangement, fast arrangement, merge sort, and occasionally kmp or generating function. The data structure requires mastery of various linked list operations, various operations of binary trees, and various traversals of binary trees (partial operations involved). And check set.

Here I also recommend two places to write questions

Hang Dian Partial Questions (Diamond Users)

I have brushed these questions myself, and I have selected some of them and I feel that they are of good quality, but I have referred to the methods of many big guys before ac, and now I will share these questions with you. Here are many groups of input java quick input to understand.

Brush the questions according to the topic:

Greedy section:

1008,1009,2037

dp column:

1003,1024,1025,1069,1071,1176,1203,1231,1257,1421,2084

Maze search column:

1181 (multi-method), 1010, 1010, 1016, 1043, 1044, 1072, 1172, 1180, 1195, 1241, 1254, 1431, 1728

And check set:

1181,1232,1272,1325,1722

Other questions (test water experience):

1007 divide and conquer 2035, 1097 fast power 1686, 1711kmp 1002 large number 2138 prime number sieve 1061,576 extended Euclidean

image-20201030211731031

Jianzhi offer is more recommended (Xingyao users)

Jianzhi offer 67 questions, the quality of the questions is very high, and there are many interview questions, some algorithms have higher data structure requirements , so the Jianzhi offer needs to have a data structure foundation in advance. In addition, the sword finger offer has high requirements for method optimization, so by brushing the sword finger offer, you can improve your time complexity optimization and method optimization, and Hangzhou Electric may pay more attention to algorithm implementation. Conscientiously brushing the sword finger offer with high quality will greatly improve myself.

image-20201030211613658

King

What is the king? When perseverance, the acm boss can choose to play in the more famous places such as cow-off competition, vjudge, codeforce, atcoder, or to consolidate according to the topic. But I still recommend my LeetCode . For developers, Likou is a good partner who continues to accompany, from unfamiliar to familiar, and there are many questions in it, and the quality is also high. If it is thorough, no matter the interview or written test, it will be easy.

So the king in my heart is LeetCode+ perseverance . I am slowly becoming the king, and I hope that one day I can become the king with everyone!

Finally, welcome to join us in writing questions, follow " bigsai " and add me on WeChat to pull you into the punch card group, and achieve the surpassing of the king! confused? Just take it with you! up!

Guess you like

Origin blog.csdn.net/qq_40693171/article/details/109394585