0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一个名为“LeetCodeAnimation”的开源项目

电子工程师 来源:lq 2018-12-17 09:09 次阅读

面试前,大家都会开始刷各类网站,希望能在算法之道上有所进益,也期待有幸能在面试中碰上原题,而在那么多的网站中,LeetCode 一定是候选学习的网站之一。但是 LeetCode 网站上的题量和难度都是大家要面临的挑战。很多同学们刚开始的时候都非常迷茫,毫无头绪。还有一部分同学真的就是在刷题。

其实网上可以搜到很多“刷题笔记”、“刷 LeetCode 的正确姿势”等分享。但是,还是有一些算法题,文字仍无法帮助同学们 get 到正确的方法或解决问题的逻辑,此时又该怎么办?有什么好的解决方法呢?今天,营长要特别为大家介绍一个名为“LeetCodeAnimation”的开源项目。在这个项目中,文字解读并不是主要的,作者把一些 LeetCode 题目或算法原理用非常生动、形象的动画形式展现出来。

第一次看到这个项目的时候,营长的感受就是作者真的很用心,不仅要整理清晰自己的思路,同时制作的动画也要让学习者可以清晰、容易的学会。制作完成一个可以说非常费心耗神了,相信对大家的学习一定有所帮助,要分享给大家。

比如必会的排序算法系列之冒泡排序

还有脑洞大开的奇葩算法之猴子排序

十大排序算法总结:算法步骤+动图解读+算法代码,一应俱全,可以说非常足够了。

每天一算:29 道,还在持续更新中

每天一算之逆波兰表达式求值

看到这里,大家是不是都很想跟着学习一下,也很好奇背后的作者是谁?营长就在这个周末和项目作者聊了一下这个项目,关于项目启动的初衷、面临的一些困难和未来的计划。下面,就为大家介绍一下这个项目的作者——程序员小吴。

AI科技大本营:可以先和大家介绍一下自己吗?

程序员小吴:我毕业于哈尔滨工业大学,目前致力于通过动画的形式演示数据结构与算法,Github 项目名字是:LeetcodeAnimation。

AI科技大本营:开始 LeetcodeAnimation 这个项目的初衷是什么?

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

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

AI科技大本营:在这个项目中遇到了哪些困难?

程序员小吴:想起去年曾用自己熟悉的编程语言开源过一个关于排序动画的项目(最近发现被人偷源码上架 App Store),在 GitHub 上也获得了不少 star,效果不错。因为每次想起动画场景的时候就能知道排序的思路,进而白板编程写成相应的排序算法代码。于是,尝试着将解题的思路用动画的形式记录下来。

一开始尝试像之前一样用 OC 语言编写动画,但发现这样效率太低了,一个简单的题目动画编写需要耗费几个星期的时间。期间也尝试过JS编写动画,但效果也不理想。(PPT 做动画)卡在这个想法上一段时间了,期间尝试过很多别的方法,效果都不太理想,偶然间发现可以使用 PPT 做动画,只要你的想象力够丰富,只需要几分钟便能勾勒出思路动画;做 PPT 是个细致的活,前期花了很多时间摸索 PPT 功能,琢磨怎么把动画做的更好看、思路展现的更加流畅。

AI科技大本营:LeetcodeAnimation 的动画是如何构思的?(一个题目变成动画)

程序员小吴:做动画前肯定要对题目已经做出并且有自己的理解了,然后加上想象力。比如该题用到了链表的概念,那肯定动画就要有链表的形象;比如该题用到了滑动窗口的概念,那就需要用长方形来表示窗口。其他的一些细节调整比如动画时间的设置、动画出现与消失的方式,这些就需要自己耐心细致的一帧一帧的调了。

一道 Leetcode 上的原题从选题到解题,从思路分析到动画制作,还要基于自己的理解,把算法在脑海里转化成动画,再录制到文章编写,往往至少要两个小时,难一点的题目要更久。

AI科技大本营:近期 LeetcodeAnimation 这个项目上有什么新想法吗?

程序员小吴:很多读者肯定了这种模式,觉得这种动画的形式大大方便了对于Leetcode的理解,但也有好多人提出能不能从简单的数据结构开始,用动画的形式去解析一下,打好基础,更好的去理解算法。我觉得这个想法也很棒,所以近期开始更新数据结构知识点。

AI科技大本营:LeetcodeAnimation 后续有什么规划?

程序员小吴:现在规划周末的话多做几题,多做几道动画。或者找同伴一起维护。

【结语】目前 Github 项目上已经更新了三十多道题目和一些算法总结性内容,虽然这些题目和 LeetCode 的总题量还有一定差距,但是作者也表示“我会尽力将 LeetCode 上所有的题目都用动画的形式演示出来,计划用 3 到 4 年时间去完成它,期待与你见证这一天!”营长表示同样很期待,也希望大家都可以喜欢这个项目,给作者支持和鼓励。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4599

    浏览量

    92630
  • 开源
    +关注

    关注

    3

    文章

    3245

    浏览量

    42388
  • 代码
    +关注

    关注

    30

    文章

    4742

    浏览量

    68342

原文标题:这样学算法,包会包懂so easy~

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一个DIY开源项目——带收音功能的插卡式移动小音箱制作

    一个DIY开源项目——带收音功能的插卡式移动小音箱制作 (1)小弟刚入行,菜鸟,为了准备锻炼自己的毅力和提高单片机技术水平,准备动
    发表于 01-12 22:37

    分享些高星开源项目

    关于GitHub,可能很多人都误以为这是互联网人的专属,其实并不是,那上面嵌入式相关的开源项目是有很多的。现分享些高星开源项目(像RT-T
    发表于 02-28 08:13

    11机器学习开源项目

    随着机器学习越来越受到开发者关注,出现了很多机器学习的开源项目,在本文列举的11机器学习开源项目中,无论你是Java爱好者还是Python
    发表于 02-14 14:25 2794次阅读

    精选10Python开源项目

    过去一个月里,我们对近 250 Python 开源项目进行了排名,并挑选出热度前 10 的项目
    的头像 发表于 11-12 09:47 6297次阅读

    我们最新的开源项目:SimpleDet

    如果去问同学你需要什么样的目标检测和识别框架,我相信性能好,速度快,好用这三关键词可以覆盖99%的需求,下面我们一一展开来看看Si
    的头像 发表于 02-13 14:04 2612次阅读
    我们最新的<b class='flag-5'>一</b><b class='flag-5'>个</b><b class='flag-5'>开源</b><b class='flag-5'>项目</b>:SimpleDet

    解读超赞的开源串口虚拟示波器项目

    大家好,今天给大家推荐开源的串口虚拟示波器项目,可以实时显示串口传输的数据,非常直观,当然也可以做二次开发,非常的灵活。 基本功能 双击放大
    的头像 发表于 05-06 17:40 5489次阅读
    解读<b class='flag-5'>一</b><b class='flag-5'>个</b>超赞的<b class='flag-5'>开源</b>串口虚拟示波器<b class='flag-5'>项目</b>

    openharmony开源项目

    华为捐赠的智能终端操作系统基础能力相关代码,随后进行开源,并根据命名规则为该开源项目名为 OpenAtom OpenHarmony(简称“OpenHarmony”)。 2020 年
    的头像 发表于 06-21 19:17 1887次阅读

    优秀的 Verilog/FPGA开源项目介绍(

    优秀的 Verilog/FPGA开源项目介绍()-PCIe通信 今天开始会陆续介绍些优秀的开源项目
    的头像 发表于 10-11 15:31 9186次阅读
    优秀的 Verilog/FPGA<b class='flag-5'>开源</b><b class='flag-5'>项目</b>介绍(<b class='flag-5'>一</b>)

    超棒的stm32的开源usb-can项目,canable及PCAN固件

    超棒的stm32的开源usb-can项目,canable及PCAN固件
    发表于 12-20 18:55 36次下载
    扒<b class='flag-5'>一</b><b class='flag-5'>个</b>超棒的stm32的<b class='flag-5'>开源</b>usb-can<b class='flag-5'>项目</b>,canable及PCAN固件

    关于开源项目网站的分享

    之前介绍的开源项目都偏向理论,那有没有开源项目可以参考学习呢?
    的头像 发表于 07-22 09:42 2427次阅读

    2带记忆的伺服电机的开源项目

    电子发烧友网站提供《2带记忆的伺服电机的开源项目.zip》资料免费下载
    发表于 10-20 17:53 0次下载
    2<b class='flag-5'>个</b>带记忆的伺服电机的<b class='flag-5'>开源</b><b class='flag-5'>项目</b>

    简单的反射游戏开源项目

    电子发烧友网站提供《简单的反射游戏开源项目.zip》资料免费下载
    发表于 11-02 10:52 0次下载
    <b class='flag-5'>一</b><b class='flag-5'>个</b>简单的反射游戏<b class='flag-5'>开源</b><b class='flag-5'>项目</b>

    ChatGPT了的七开源项目

    就推出了很多。估计,现在还有不少同学苦于不知道该如何体验chatGPT。   chatGPT火了,围绕chatGPT尽心二次扩展的开源项目最近也涌现出很多,今天就来给大家介绍几个最近发现的不错的开源
    发表于 02-15 09:26 3次下载
    ChatGPT了的七<b class='flag-5'>个</b><b class='flag-5'>开源</b><b class='flag-5'>项目</b>

    开放原子开源基金会与20开源项目举行捐赠签约仪式

    开放原子开源基金会“立足中国、面向世界”,坚持科技、公益、普惠属性,广泛汇聚开发者,培育开源项目。6月11日,在2023开放原子全球开源峰会上,开放原子
    的头像 发表于 06-11 18:35 1499次阅读

    使用Rust和Nomad进行开源游戏服务器管理

    我已经在名为Rivet 的项目上工作了几年,最近才开源
    的头像 发表于 08-22 14:34 593次阅读