Hello, I’m Xiao Wu, a programmer. At the beginning of December, I uploaded a warehouse on GitHub, which has gained 6300 stars so far. Now I would like to talk to you about the original intention of the project, some difficulties faced and future plans.

The bud of “LeetcodeAnimation”?

In the process of brushing Leetcode, I encountered many interesting and difficult problems. Sometimes I could solve them by myself, and sometimes I needed to see others’ analysis to solve them, but I was always at a loss when I looked at the original problems once in a while.

At this time, I was thinking: is there a way to make the abstract algorithm concrete, vivid, deepen or speed up the idea of solving the problem?

The death of LeetcodeAnimation?

Last year, I opened an open source project about sorting animation with my familiar programming language (it was recently discovered that the source code was stolen and put on App Store), and it also got a lot of stars on GitHub, with good effect: Because every time I think of the animation scene, I can know the idea of sorting, and then whiteboard programming to write the corresponding sorting algorithm code, because of this ability, in many interview algorithm links can be easily dealt with.

GitHub Address:Github.com/MisterBooo/…

So, try to solve the problem in the form of animation to record.

At first, I tried to write animation in OC language as before, but I found it was too inefficient. It took several weeks to write a simple subject animation.

During the study of small procedures, intends to use small procedures to show that kung fu may not be home, skills are not very skilled, the effect is not ideal.

After trying and failing, the idea stalled for a long time while I fumbled through LeetCode.

The beginning of LeetcodeAnimation? 【PPT animation 】

Until one day, WHEN I was using PPT, I found that the animation of PPT was very rich and the skills were not very sophisticated: as long as your imagination was rich enough, you could draw out the animation of thinking only in a few minutes.

So, after a short period of learning, coupled with their own imagination, immediately made the first animation.

It was obvious that the animation’s interaction and shape Settings were not very good, but I realized that using PPT animations to demonstrate the idea of LeetCode did work!

Of course, making PPT is a delicate job, so I spent some time to explore the functions of PPT, thinking about how to make animation better and show ideas more smoothly.

How was the animation conceived for LeetcodeAnimation? [A subject becomes animated]

Basically, the steps of an original topic in LeetCode from topic selection to article generation are as follows:

  • From the basic familiar knowledge points (graph, tree, heap, stack, linked list, hash table, memory search, dynamic programming, pointer method, and search set, etc.) each point to select a few classic topics;

  • First examine the topic, do the topic, and then check the Internet to see if there is a more clear way to solve the problem;

  • Plus imagination.

For example, if the problem uses the concept of a linked list, the animation must have the image of a linked list;

For example, if the problem uses the concept of a sliding window, you need a rectangle to represent the window.

For example, the problem uses the concept of binary tree, so we need to construct the graph of binary tree.

Other details such as the setting of the animation time, the way the animation appears and disappears, these need to be adjusted patiently and carefully frame by frame.

Joy and pain of “LeetcodeAnimation”? [Algorithm GIF formation]

Many times, a problem can take only a few minutes to solve, but the animation can take anywhere from one to two hours.

I am an on-the-job programmer, and my work is quite saturated. Animation production can only be arranged in the dead of night. In November, I often busy doing animation until one or two o ‘clock in the morning.

It’s fun and enjoyable, after all, doing what you love to do 🙂

LeetcodeAnimation

At the beginning of December, the project was posted on GitHub, and became the first trending edition in just two days.

To date, it has over 6300 stars.

Long-term plans for LeetcodeAnimation?

As I wrote on “LeetCode Animation”, I will try my best to demonstrate all topics in LeetCode in the form of animation. I plan to complete it in 3 to 4 years. I look forward to witnessing this day with you!

So, basically I will make a topic animation one or two days, on weekends when I am in good condition, I can do three or four problems a day 🙂

During this period, it has been recognized by many readers, who feel that this form of animation greatly facilitates the understanding of Leetcode.

At the same time, there are a lot of cute new people think can start from a simple data structure, also in the form of animation to analyze.

After careful consideration, during the discussion with “nuggets”, “small column” and other bigwigs, I think the idea of “using animation to present data structures and algorithms” is great!

As a result, it recently stopped updating “LeetcodeAnimation” and started animating from simple data structures.

However, there is no need to worry about whether “LeetcodeAnimation” will be “eunuch”. After updating the data structure and algorithm section, “LeetcodeAnimation” will be restored and updated immediately. It is conservatively estimated that at least 130 topics will be updated in 2019

Programmer Xiao Wu’s 2019?

Through the project of “LeetcodeAnimation”, I got to know a lot of algorithm masters, including Liuyubobobo, the most popular moOCs teacher, and excellent students who began to study deep learning in their sophomore year. In the process of communicating with them, I realized more and more the charm of data structure and algorithm, and also used more and more power to update my public account 🙂

Next year is full:

  • Animation of “Data Structures and Algorithms”
  • How to film the animation process and get more people involved
  • The little column produced a little book
  • The nuggets produced a little book
  • “LeetcodeAnimation” will update at least 130 titles and strive to break 20,000 stars

2018, Say hi say Goodbye!

2019, with you 🙂

Denver annual essay | 2018 technical way with me The campaign is under way…