爱意满满的作品展示区。
linsen80586

动画学 leetcode 算法,全免费!做了一款 iOSApp 算法宝,欢迎大家试用!

  linsen80586 · Feb 14, 2023 · 29983 views
This topic created in 1365 days ago, the information mentioned may be changed or developed.

初来乍到,很喜欢这里的分享氛围,观摩了很多大佬的作品,也分享下自己刚开发的一款 App:算法宝。

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

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

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

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

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

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

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

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

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

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

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

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

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

归并排序

归并排序

两数之和

两数之和

买卖股票的最佳时机 II

买卖股票的最佳时机 II

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





Supplement 2  ·  May 3, 2023

iPad分屏适配已经完成,更新至 2.0.0 即可,支持分屏展示动画和代码 /题目 /解析!同时支持横屏和竖屏!

2.0.0版本即日起所有内购项目0元秒杀,活动时间到2023-05-06截止!欢迎大家下载使用!

144 replies  •  2024-05-17 21:46:02 +08:00
1  2  
❮ ❯
hackpro
hackpro
Feb 14, 2023 via iPhone
1
非常好
好奇这种动画有什么办法批量生成吗
linsen80586
linsen80586
OP
Feb 14, 2023❤️4
2
@hackpro 感谢夸奖,说到动画,一开始确实想过一些通用方案或者简便的方式,都放弃了,为了追求极致的体验,最后还是选择 apple 原生的 core animation 来实现。考虑到学习过程中不想让动画过于酷炫造成干扰,所以动画效果做的尽量克制,不过动画确实还有很多可改进的需要反复打磨。
eggt
eggt
Feb 14, 2023
3
赞一个,想问下这个动画是纯自己设计的吗?
jorneyr
jorneyr
Feb 14, 2023
4
已白嫖。
linsen80586
linsen80586
OP
Feb 14, 2023❤️1
5
@eggt 视觉上参考了一些算法书,尽量和大家的认知一致。动画基本都是自己想象。
garibellee
garibellee
Feb 14, 2023
6
希望能坚持学下来
clickclick
clickclick
Feb 14, 2023 via iPhone
7
非常感谢😁
lockheart
lockheart
Feb 14, 2023 via iPhone
8
感谢开发者
chasel0720
chasel0720
Feb 14, 2023
9
感谢分享
kite12580
kite12580
Feb 14, 2023❤️1
10
感谢分享,给个建议,代码页用代码块或者等宽字体吧
8629
8629
Feb 14, 2023
11
非常好
linsen80586
linsen80586
OP
Feb 14, 2023
12
@kite12580 建议很好,这里确实应该换个字体,回头试下看看,感谢支持!
kamto
kamto
Feb 14, 2023
13
感谢分享,上下班路上再细品
maemolee
maemolee
Feb 14, 2023
14
感谢分享,太厉害了
RyougiShiki
RyougiShiki
Feb 14, 2023
15
没广告挺好
linsen80586
linsen80586
OP
Feb 14, 2023
16
@RyougiShiki 干扰学习的统统不要
linsen80586
linsen80586
OP
Feb 14, 2023
17
@jorneyr 觉得不错给个 5 星哦
tangtangxin
tangtangxin
Feb 14, 2023
18
感谢楼主,已经拥有!
justin2018
justin2018
Feb 14, 2023
19
厉害呀 666
ian511
ian511
Feb 14, 2023
20
好像没有侧边滑动返回,这个能加一下么
linsen80586
linsen80586
OP
Feb 15, 2023
21
@ian511 有的呀,是不是上下滚动的时候不能侧滑?
linsen80586
linsen80586
OP
Feb 15, 2023
22
@garibellee 加油
linsen80586
linsen80586
OP
Feb 15, 2023❤️1
23
@kite12580 刚把代码提交了,下个版本就能看到
thinkwei2012
thinkwei2012
Feb 15, 2023
24
赞一个,已白嫖
sktline
sktline
Feb 15, 2023
25
楼主请问有 Android 版本吗?
zhwithsweet
zhwithsweet
Feb 15, 2023
26
logo 可以重新设计下,个人感觉有点粗糙
linsen80586
linsen80586
OP
Feb 15, 2023
27
@sktline 目前没有这个计划
linsen80586
linsen80586
OP
Feb 15, 2023
28
@zhwithsweet 哈哈,确实没有设计师,被你看出来了
easymbol
easymbol
Feb 16, 2023
29
下载了,并且分享给同事了,大赞
linsen80586
linsen80586
OP
Feb 16, 2023
30
@easymbol 感谢支持,觉得不错给个 5 星哦
Ryanel
Ryanel
Feb 16, 2023
31
感谢 op ,已下载已分享
linsen80586
linsen80586
OP
Feb 16, 2023
32
@easymbol 感谢夸奖,多提意见哈
PaulSamuelson
PaulSamuelson
Feb 17, 2023❤️1
33
已卸载《算法动画图解》

算法动画图解:艹,把我卷起来了
Highlight1024
Highlight1024
Feb 17, 2023
34
牛的牛的
tangtangxin
tangtangxin
Feb 17, 2023
35
@duanquanwu 笑死,有画面了。。
BearCookie
BearCookie
Feb 18, 2023 via Android
36
看起来非常棒,请问有安卓版本吗?或者 macos 版本也行
linsen80586
linsen80586
OP
Feb 18, 2023
37
@neochen13 你好,m 系列的 mac 可以支持,安卓版现在还没有。
linsen80586
linsen80586
OP
Feb 18, 2023
38
@duanquanwu 哈哈哈,笑死
linsen80586
linsen80586
OP
Feb 19, 2023
39
感谢大家支持!后面 0 元秒杀会限时,大家抓紧 0 元购买哦!
Midia
Midia
Feb 19, 2023
40
支持多语言吗
linsen80586
linsen80586
OP
Feb 19, 2023
41
@Midia 想做,但短期没精力弄,很多待办了。。。
tangtangxin
tangtangxin
Feb 19, 2023
42
用了几天,确实很好用,效率明显提高了,感谢楼主分享!
linsen80586
linsen80586
OP
Feb 21, 2023
43
@tangtangxin 感谢支持,欢迎提意见
linsen80586
linsen80586
OP
Feb 23, 2023
44
@kamto 欢迎使用
linsen80586
linsen80586
OP
Feb 26, 2023
45
@tangtangxin 可以更新最新版本了
linsen80586
linsen80586
OP
Mar 2, 2023
46
最新 1.2.3 版本欢迎大家试用
tangtangxin
tangtangxin
Mar 7, 2023
47
求更 codetop 前 300 的题目,很需要哈~
linsen80586
linsen80586
OP
Mar 8, 2023
48
@tangtangxin 应该已经是有一些是 codetop 里的了
linsen80586
linsen80586
OP
Apr 16, 2023
49
目前 ipad 版本正在开发中哦
tangtangxin
tangtangxin
Apr 16, 2023
50
@linsen80586 期待哦,什么时候能完成?
linsen80586
linsen80586
OP
Apr 16, 2023
51
@tangtangxin 目前先优先做 ipad 适配呢
muchenlou
muchenlou
Apr 17, 2023 via iPhone
52
已白嫖
FLynnCPP
FLynnCPP
Apr 17, 2023 via iPhone
53
好东西,发现一个笔误:贪心是局部最优并且全局最优,动态规划是局部最优不一定全局最优。

然后提个小建议:下滑的时候,动画部分可以锁定,这样便于一边看动画,一边看解释
ginakira
ginakira
Apr 17, 2023
54
来晚了,不过 App 好评
cssk
cssk
Apr 17, 2023 via iPhone
55
明明设置里有英文,实际却只有简体中文
lyusantu
lyusantu
Apr 17, 2023
56
代码要是支持语言切换就好了
kuyuzhiqi
kuyuzhiqi
Apr 17, 2023 via iPhone
57
已下载
yukunZhan9
yukunZhan9
Apr 17, 2023
58
零元购已经结束了吗?/(ㄒoㄒ)/~~
8355
8355
Apr 17, 2023
59
接着卷啊你们 玩个手机都要开始刷算法了😭😭😭😭
fsdrw08
fsdrw08
Apr 17, 2023 via Android
60
能搞个安卓的吗
hugo2lee
hugo2lee
Apr 17, 2023
61
下波 0 元秒杀还有吗
weishao666
weishao666
Apr 17, 2023 via iPhone
62
向大佬致敬
linsen80586
linsen80586
OP
Apr 17, 2023
63
@fsdrw08 你好,目前没有规划安卓,不过现在可以支持 m 系列 mac 呢
linsen80586
linsen80586
OP
Apr 17, 2023
64
@hugo2lee 计划 ipad 适配完成后会再搞一波
linsen80586
linsen80586
OP
Apr 17, 2023
65
@FLynnCPP 感谢提醒。建议很好,回头仔细想下交互。
mcnultytrek
mcnultytrek
Apr 17, 2023
66
@linsen80586 期待一波~
ShuangChenyue
ShuangChenyue
Apr 17, 2023
67
已经结束了吗 没赶上啊
shewhen
shewhen
Apr 18, 2023
68
期待
lanlan2020
lanlan2020
Apr 18, 2023
69
好东西,支持
celo
celo
Apr 18, 2023
70
好东西,支持
Tamamopoi
Tamamopoi
Apr 18, 2023
71
没有 IOS 设备,总之后排支持
sdwgyzyxy
sdwgyzyxy
Apr 18, 2023
72
虽然没有 IOS 设备,但是我也装了一个。
jzjjzj
jzjjzj
Apr 18, 2023
73
外行看了 能学懂吗 😄
linsen80586
linsen80586
OP
Apr 19, 2023❤️1
74
@ShuangChenyue 下次大版本支持 iPad 分屏模式,会再来一波
linsen80586
linsen80586
OP
Apr 19, 2023
75
@jzjjzj 可以尝试从排序算法开始入门试试,欢迎提建议哈
abujj
abujj
Apr 19, 2023
76
@linsen80586 ios 13.7 闪退
fresco
fresco
Apr 19, 2023 via iPhone
77
已下载 先学学简单的
blankmiss
blankmiss
Apr 19, 2023
78
8$ 有点小贵哦
xuminke
xuminke
Apr 19, 2023
79
Intel MAC 不支持....泪奔
air00dd
air00dd
Apr 21, 2023
80
55 题 8 美元是不是另外的?动画是免费的?
Wilbur4real
Wilbur4real
Apr 21, 2023
81
从没了解过算法,刚刚体验了一下,非常直观,感谢!
worldqiuzhi
worldqiuzhi
Apr 21, 2023
82
这种学习类的内容 不太适合放到 APP 上使用
debuggeeker
debuggeeker
Apr 21, 2023
83
已安装
susu200213
susu200213
Apr 23, 2023
84
要是有 android 版本就好了
Aloento
Aloento
Apr 25, 2023
85
感谢
vHypnos
vHypnos
Apr 25, 2023
86
感谢,东西是不错,就是用 iOS 的小屏幕学算法有点难受,更愿意在电脑上,最差 ipad 上操作。
mameng
mameng
Apr 25, 2023
87
建议出网页版,手机屏幕太小了 使用不爽
declandragon
declandragon
Apr 25, 2023
88
期待安卓版,非常感谢
cwei3790
cwei3790
Apr 25, 2023
89
感谢,还有秒杀活动吗🤣
linsen80586
linsen80586
OP
Apr 25, 2023
90
@cwei3790 目前已经历史最低了哈,秒杀等大版本更新的时候会再来一波
koto
koto
Apr 26, 2023
91
thanks
linsen80586
linsen80586
OP
Apr 26, 2023
92
@mameng ipad 版本正在适配中,会爽很多哈
hammy
hammy
Apr 26, 2023
93
试试
tangtangxin
tangtangxin
Apr 26, 2023
94
大佬 ipad 适配完成了吗?
SWBMESSI
SWBMESSI
Apr 27, 2023
95
@linsen80586 intel 的可以也支持一下吗
MineFreeman
MineFreeman
Apr 27, 2023
96
感谢楼主,体验很棒,回头再冲个困难模式,想提个建议,希望能在每个题目里介绍一些相关的使用场景(或者是使用场合?)感觉那会更好的帮助理解?
6NCQWh99X46kZv6x
6NCQWh99X46kZv6x
Apr 27, 2023
97
好厉害👍!
findex
findex
May 1, 2023 via iPhone
98
很好很不错
BearCookie
BearCookie
May 2, 2023 via Android
99
看着真的好棒,请问有安卓版吗?
linsen80586
linsen80586
OP
May 2, 2023
100
@neochen13 目前还没有做安卓版呢,目前除支持 iphone ,ipad 还支持 m 芯片的 mac
1  2  
❮ ❯
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2295 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 132ms · UTC 13:38 · PVG 21:38 · LAX 05:38 · JFK 08:38
♥ Do have faith in what you're doing.