动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝

在算法宝 App 里一共制作了 70 个 leetcode 算法动画。目前所有算法动画0 元秒杀,无广告。 AppStore 链接https://apps.apple.com/cn/app/id1624248084

动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝

为什么会做一款算法动画图解 App

和很多程序员一样,每次换工作前都要准备大量时间刷算法。很菜,刷题过程中都要先看题解。在网上也看了很多大佬的题解,特别喜欢看有动图或者示意图的算法解析,比看文字快。在这过程中也发现了几个问题,比如:动图是没有交互的,不能暂停;数据是死的不能换;手机上学习不太方便等。

一开始看到过一些不错的动画,几次都有很大的冲动想在 App 中用原生代码实现,这次终于下了决心,一口气做了 70 个动画。

我理解这款 App 的定位是一个工具,可以帮助我们快速理解算法思路和代码,帮助记忆,提高学习效率。但在这里不能提交,不能执行代码,代码还是要在电脑上敲才更有感觉。

为什么没有按照 leetcode 编号顺序排列

目前给算法题做了分类,分为三大块:

  • 链表,字符串,数组,二叉树;
  • 回溯,贪心,动态规划,分治;
  • 排序单独做分类。

每个分类下,按难度分为简单,中等和困难。

先把数据结构和算法分开归类,按知识点学习,比如可以集中时间学习二叉树结构或者动态规划算法,这样集中饱和训练有助于提高学习效率。数据结构在前,算法在后,也是按我们学习理论知识的顺序安排的。 算法方面,目前安排了回溯,贪心,动态规划,分治四种。 个人多年前学习数据结构和算法最早接触的算法就是各种排序,当时觉得排序太难了,印象非常深刻,所以为初学者单独做了一个排序分类。

动画和代码如何结合等交互问题的思考

  • 自己学习算法过程中经常理解了思路,但是代码却看不懂,而且很多文字讲解中的代码没有注释,看到这种就头很大。所以,思考 App 交互的时候特别设计了代码高亮功能,这意味着每一行的代码会跟随动画进度高亮。这样动画在执行,代码在高亮,看着也很酷。
  • 动画虽然容易理解,但还是需要有一些简短的讲解,所以在动画下方设计了“字幕”功能。每次执行到对应步骤,对应的讲解就会展示。
  • 动画的播放和重置,每道算法页面都有播放功能,那测试用例如何准备呢?简化测试用例概念,设计了“重置”按钮,也就是说测试用例是随机的,当你想换一套数据,点一下重置就可以了。

上传了 youtube 的几个算法视频贴在下面,请大家多指教

归并排序

归并排序

两数之和

两数之和

买卖股票的最佳时机 II

买卖股票的最佳时机 II

第 1 条附言  ·  355 天前

目前 iPad 适配正在开发中,界面结构做了调整,放出来给大家预览下,欢迎提意见哈

动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝

动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝

动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝

阅读剩余
THE END