有了这个可视化插件,刷题调试更轻松
如何有效学习算法
学习算法的基本思路就是:先学习算法思想,然后通过做题消化思想,并在做题过程中慢慢学习,掌握一些小技巧。这其中算法思想就是道,而经典题目以及做题技巧就是术。做题是通过术来完善道。
但是很多人都反应看讲义和做题之间断层严重,也就是一看就会,一些就废。这怎么办呢?
除了多写,多练习之外,我认为以下两点可以帮助你:
- 做题的时候和讲义(学习资料)进行结合
- 看讲义(学习资料)的时候将例题用可视化的方式自己跑一遍
但是毕竟自己画图还是有点成本的,不是所有的人都有动力自己画图的。程序员都很懒,其实我刚开始刷题的时候一直有一个想法, 如果做题有可视化显示该有多好?最好是和我讲义图类似的那种, 这样无疑对新手来说吸收思想效率肯定高。
可视化调试插件 无巧不成书,前几天《91 天学算法》群里有人提到 LeetCode 刷题调试。大家有的用 IDE 调试,有的用会员的调试功能在网页调试。 其实前一阵子我分享刷题技巧的时候也分享了调试插件,没有看过的同学可以看下 力扣刷题的正确姿势是什么?。
今天再分享一个适合新手的调试工具,简单易用,直观方便。更关键的是,其已经内置到我的刷题插件 leetcode-cheatsheet 中,直接开箱即用,插件版本大于等于 0.9.0 即可。虽然它暂时还无法自动生成像我讲义里面那么完整的图和动画,但是比文字要直观太多了。后期考虑集成更多的语言以及更多的语法特性以及更好的展示效果。
该使用方式非常简单,完全满足了大家偷懒的需求。你只需要:
- 安装刷题插件 leetcode-cheatsheet
插件如何下载与安装可以在公众号回复插件获取
- 打开 leetcode 中任意一道题目,写代码。
目前支持 Python3,CPP,JavaScript
- 点击下方的可视化调试
文章图片
- 按提示修改代码后点击Visualize Execution按钮
如果无法修改代码,可以先点击 edit code
文章图片
这里我就想吐槽一下 leetcode 了。干嘛每一道题函数名字都不一样,真没这个必要。比如都叫 solve 不好么?希望力扣可以考虑一下这个建议。
- 通过控制区域控制代码执行,右侧会自动同步的可视化地显示变量信息
文章图片
最后友情提示一下。可视化调试推荐在看资料(比如 91 天学算法的讲义)的时候把其中的例题用可视化的方式调试一遍,填平思路到代码的鸿沟。 之后大家做题不要依赖调试功能,而是先在大脑中调试一下,然后用工具验证。也就是说这个工具,我仅推荐你在两种情况下使用:
- 看算法思想资料,做其中的例子的时候一步步调试学习。
- 代码有 case 跑不通,先在脑子中过一下,猜测大概出问题的点,然后用工具直接定位到附近通过可视化的方式帮助你分析。
推荐阅读
- 猎杀IP
- 开花店的前景怎么样()
- 为什么孩子一定要学会可视化思维!
- 滚这个字
- 一个懂得和他自己灵魂沟通的人,这个人一定是正直善良的人
- 残卷
- 炉火温暖
- 在这个时代每个女性都应该用个性的服装来证明自己的存在
- 躺着中枪
- 现代人的痛苦