首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
宝塔
V2EX  ›  程序员

21 天,在 Github 上获取 6300 star

  •  6
     
  •   CoderOnePolo · 325 天前 · 6949 次点击
    这是一个创建于 325 天前的主题,其中的信息可能已经有所发展或是发生改变。

    不知不觉在 V2EX 待了两年多了,在这里看到了很多个创意与想法,自己也在这里收获了许多的认可,感谢 v 友。

    12 月初在 github 上启动了一个叫做「 LeetcodeAnimation 」的项目,第一时间在这里宣传,靠 v 友们的第一波 star,冲上了 trending 榜,再次感谢:)

    下面和大家聊聊关于项目启动的初衷、面临的一些困难和未来的计划吧。

    「 LeetcodeAnimation 」的萌芽?

    在刷 Leetcode 的过程中,遇到很多有意思和有难度的题目,有时候自己能做出来,有时候需要看别人的分析才能解开,但往往隔一段时间再去看原题的时候又是一头雾水。

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

    「 LeetcodeAnimation 」的夭折?

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

    排序算法演示

    项目 GitHub 地址: https://github.com/MisterBooo/Play-With-Sort-OC

    Play-With-Sort-OC 地址

    被别人偷上架的项目:)

    于是,尝试着将解题的思路用动画的形式记录下来。

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

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

    小程序

    百般尝试之后无果,于是这个想法停止了很长一段时间,期间自己依旧笨拙的刷着 LeetCode。

    「 LeetcodeAnimation 」的开始? [ PPT 做动画]

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

    于是,经过一小段时间的学习,加上自己的想象力,马上做出了第一个动画。

    第一个动画

    可以明显的发现,这个动画的交互与形状的设置并不是很好,不过,我认识到了:用 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,与君共勉:)

    49 回复  |  直到 2018-12-30 11:25:57 +08:00
        1
    privil   325 天前
    厉害了!
        2
    hackerang   325 天前
    牛皮!支持!
        3
    hflyf123   325 天前
    支持,动画非常生动形象
        4
    CoderOnePolo   325 天前
    @privil
    @hackerang 谢谢,一开始全靠 v 友的支持冲上 trending 榜后,看到被认可,我才能坚定的做下去
        5
    CoderOnePolo   325 天前
    @hflyf123 感谢支持
        6
    ZehaiZhang   325 天前
    star 了,超棒,顶
        7
    luosuosile   325 天前
    创意的力量?,idea 不算新,但是没发现有多少人这么做
        8
    hei1000   325 天前
    支持一下
        9
    xiaozizayang   325 天前
    波波老师粉丝群群友路过支持打 call
        10
    lvxiang119   325 天前
    加油哦~~
        11
    zdl0929   325 天前
    支持,很厉害
        12
    ppdudu   325 天前
    支持!牛皮
        13
    zhuoyan   325 天前
    支持
        14
    duowb   325 天前
    支持
        15
    ayase252   325 天前 via iPhone
    很厉害,感觉用 PPT 搞动画工作量实在大。
        16
    gdky005   325 天前
    点赞
        17
    zhuly09   325 天前
    支持
        18
    DR0011   325 天前
    膜拜大佬
        19
    SupperMary   325 天前 via Android
    支持一下
        20
    SteveZ   325 天前
    star 了,支持大佬
        21
    mathzhaoliang   325 天前
    开头英文版链接直接写 English VERSION HERE 就可以了。 而且我建议把 README 设为英文版,在开头加个中文版链接。毕竟英文受众确实更多。
        22
    atonku   325 天前
    大佬厉害了,我要抄你的创意!
        23
    bonfy   325 天前
    支持 Leetcode 做动画,这个是第一次见

    数据结构 做 动画的 国外见过还满多的,甚至还见过 代码 联动 动画的

    我还是 期待你的 Leetcode 动画
        24
    Donne   325 天前
    有点东西的
        25
    jruif   325 天前
    很新颖的开源贡献,直接拿代码上 app store 就太恶心了
        26
    zhuoyan   325 天前   ♥ 1
    想起以前收藏了个数据结构和算法动态可视化网站 https://visualgo.net/zh
        27
    radiolover   325 天前   ♥ 2
    维基百科在 15 年前就有相关的演示动画了。
    国人热衷这个,还不是因为最近几年的面试套路。
    所以啊,本质上还是浮躁
        28
    a852695   325 天前
    太支持了,能将枯燥的算法动画化,本身就是一个非常难得事情
        29
    dacapoday   325 天前
    第一次看到国人弄这个,python 源码就自带一个 sort 可视化例子 Python36\Tools\demo\sortvisu.py
    @radiolover #27 浮躁是一方面,也说明 IT 在国内的热门程度。可视化做出来容易,做到直观易懂,尤其是没常识的初学者易懂很难。
        30
    zhy   325 天前
    赞!怎么做动画是个问题,谁来发明个动画的语言😂
        31
    wxl1380610   325 天前
    支持一下
        32
    HeliumTang   325 天前
    一看到楼主帖子就觉得和 liuyubobobo 老师的课很像,后面果然老师也出现了。支持楼主
        33
    SCaffrey   325 天前 via Android
    动画其实没有 visualgo 实用,不过能做出来也很不容易。加油!
        34
    weiliangweiliang   325 天前
    楼主加油 正好需要好好学习下
        35
    glfpes   325 天前
    @zhuoyan 你给的链接这个真的是太棒了
        36
    twttwt   325 天前
    支持一下
        37
    natforum   325 天前
    膝盖送上
        38
    HeartJ   325 天前
    支持一下,赞
        39
    kawkeye   325 天前 via Android
    很不错😊,已 start,持续关注中
        40
    spark104   325 天前
    orz
        41
    TonyShng   325 天前
    真的做的很棒,赞
        42
    lamada   325 天前
    赞!
        43
    zdd2389   325 天前
    最早是在掘金看到大佬,那时候就关注了
        44
    xlx   325 天前
    如果能再加个语音解说就更屌了
        45
    specita   325 天前
    国外网站这种方式见过,对理解算法挺有帮助的,支持一下
        46
    dallaslu   325 天前
    把算法实现库,一步转成动画展示,有没有可行性呢?
        47
    dinghow   325 天前
    感谢分享,超级棒!
        48
    tianzry   325 天前 via Android
    支持。感谢你
        49
    kain007   324 天前 via iPhone
    支持!
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2072 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 16:07 · PVG 00:07 · LAX 08:07 · JFK 11:07
    ♥ Do have faith in what you're doing.