21天,我在Github上获取 6300 star | 掘金年度征文

你们好,我是程序员小吴。12月初我在GitHub上上传了一个仓库,到如今为止获取了 6300 star,下面和你们聊聊关于项目启动的初衷、面临的一些困难和将来的计划。git

「LeetcodeAnimation」的萌芽?

在刷Leetcode的过程当中,遇到不少有意思和有难度的题目,有时候本身能作出来,有时候须要看别人的分析才能解开,但每每隔一段时间再去看原题的时候又是一头雾水。程序员

这时,我在考虑:有没有一种方法能够把抽象的算法具体化、生动化,加深或者加快解题的思路?github

「LeetcodeAnimation」的夭折?

想起去年曾用本身熟悉的编程语言开源过一个关于排序动画的项目(最近发现被人偷源码上架App Store),在GitHub上也得到了很多star,效果不错:由于每次想起动画场景的时候就能知道排序的思路,进而白板编程写成相应的排序算法代码,由于这个能力,在很多的面试的算法环节能轻松应对。面试

排序算法演示

项目GitHub地址:github.com/MisterBooo/…算法

Play-With-Sort-OC地址

被别人偷上架的项目:)

因而,尝试着将解题的思路用动画的形式记录下来。编程

一开始尝试像以前同样用OC语言编写动画,但发现这样效率过低了,一个简单的题目动画编写须要耗费几个星期的时间。小程序

期间也学习太小程序,打算使用小程序来显示,可能功夫不到家,技巧不太熟练,效果也不理想。数据结构

小程序

百般尝试以后无果,因而这个想法中止了很长一段时间,期间本身依旧笨拙的刷着 LeetCode 。编程语言

「LeetcodeAnimation」的开始?【PPT作动画】

直到一个偶然的机会,本身在使用PPT的时候发现PPT的动画很丰富,使用技巧也不是很高深:只要你的想象力够丰富,只须要几分钟便能勾勒出思路动画。post

因而,通过一小段时间的学习,加上本身的想象力,立刻作出了第一个动画。

第一个动画

能够明显的发现,这个动画的交互与形状的设置并非很好,不过,我认识到了:用PPT动画来演示LeetCode解题思路的确行得通!

固然,作PPT是个细致的活,因而花了一些时间摸索PPT功能,琢磨怎么把动画作的更好看、思路展示的更加流畅。

「LeetcodeAnimation」的动画是如何构思的?【一个题目变成动画】

基本上一道LeetCode上的原题从选题到文章生成的步骤是这样的:

  • 从基本熟悉知识点(图、树、堆、栈、链表、哈希表、记忆搜索、动态规划、指针法、并查集等)中每一个知识点挑选出几道经典的题目;

  • 先本身审题、作题,而后查看网上有没有思路更加清晰的解题方式;

  • 加上想象力。

好比该题用到了链表的概念,那确定动画就要有链表的形象;

好比该题用到了滑动窗口的概念,那就须要用长方形来表示窗口。

好比该题用到了二叉树的概念,那么就须要构造二叉树的图形。

其余的一些细节调整好比动画时间的设置、动画出现与消失的方式,这些就须要本身耐心细致的一帧一帧的调了。

「LeetcodeAnimation」的快乐与痛苦?【算法动图造成】

不少时候,一道题目的解题只花费了几分钟,但作出动画来却要划分一到两个小时不等。

本身是一个在职程序员,工做也比较饱和,动画的制做只能安排在夜深人静的时候,在十一月份的时候常常忙活着作动画作到凌晨一两点。

这个过程痛快却快乐着,毕竟,这是作本身喜欢作的事情:)

「LeetcodeAnimation」的成果

12月初,将项目放到了GitHub上面去,短短两天登上了trending版第一的位置。

项目第一

我的排名第一

到目前位置,已经有超过 6300 的star。

「LeetcodeAnimation」的长期计划?

正如我在 「LeetcodeAnimation」上写的:我会尽力将LeetCode上全部的题目都用动画的形式演示出来,计划用3到4年时间去完成它,期待与你见证这一天!

因此,基本上我一到两天都会制做一道题目的动画,状态好的周末,一天能作三四题:)

期间获得了不少读者的承认,以为这种动画的形式大大方便了对于Leetcode的理解。

与此同时,有不少小萌新们以为能不能从简单的数据结构开始,一样用动画的形式去解析一下。

通过慎重考虑,期间与「掘金」、「小专栏」等大佬们讨论以后,以为「用动画呈现数据结构与算法」这个想法很棒!

因而,最近开始中止更新「LeetcodeAnimation」,转为从简单的数据结构开始进行动画制做。

但不用担忧「LeetcodeAnimation」会不会所以「太监」,更新完数据结构与算法章节后,立马恢复更新「LeetcodeAnimation」,保守估计 2019 年会至少更新 130 道题目,敬请期待:)

程序员小吴的 2019 ?

经过「LeetcodeAnimation」这个项目,认识了不少的算法大佬,有慕课网最受欢迎的 波波老师(liuyubobobo),有大二就开始研究深度学习的学霸等。在与他们沟通交流的过程当中,愈来愈体会到数据结构与算法的魅力,也愈来愈用动力将本身的公众号更新下去:)

慕课网最受欢迎的波波老师

明年的事情挺充实的:

  • 动画演示完「数据结构与算法」内容
  • 将如何制做动画的过程录制下来,让更多人参与进来
  • 小专栏出一本小书
  • 掘金出一本小册
  • 「LeetcodeAnimation」至少更新 130 篇,争取突破 20,000 star

2018,say hi say goodbye!

2019,与君共勉:)

掘金年度征文 | 2018 与个人技术之路 征文活动正在进行中......

相关文章
相关标签/搜索