共计 1330 个字符,预计需要花费 4 分钟才能阅读完成。
如何无效学习算法
学习算法的基本思路就是:先学习算法思维,而后通过做题消化思维,并在做题过程中缓缓学习,把握一些小技巧 。这其中算法思维就是 道,而经典题目以及做题技巧就是 术。做题是通过术来欠缺道。
然而很多人都反馈 看讲义和做题之间断层重大,也就是一看就会,一些就废。这怎么办呢?
<!– more –>
除了多写,多练习之外,我认为以下两点能够帮忙你:
- 做题的时候和讲义(学习材料)进行联合
这是一个很重要的也容易被疏忽的点。拿《91 天学算法》来说:看讲义就是学思维,每日一题就是坚固消化思维。做每日一题的时候,要多往讲义上靠靠,比方想一下这道题对应讲义哪一部分,考查的是讲义中提到的哪一个知识点。
- 看讲义(学习材料)的时候将例题用可视化的形式本人跑一遍
我刚开始学习算法的时候,基本上也是这种思路。学习完思维做题的时候对例题都在电脑或者纸上画一下代码执行流程,而后和学习的算法思维进行联合。这样不仅算法思维容易排汇,而且也收效缓解了 一看就会,一写就废 的难堪地步。
然而毕竟本人画图还是有点老本的,不是所有的人都有能源本人画图的。程序员都很懒,其实我刚开始刷题的时候始终有一个想法,如果做题有可视化显示该有多好?最好是和我讲义图相似的那种,这样无疑对老手来说排汇思维效率必定高。
可视化调试插件
无巧不成书,前几天《91 天学算法》群里有人提到 LeetCode 刷题调试。大家有的用 IDE 调试,有的用会员的调试性能在网页调试。其实前一阵子我分享刷题技巧的时候也分享了调试插件,没有看过的同学能够看下 力扣刷题的正确姿态是什么?。
明天再分享一个适宜老手的调试工具,简略易用,直观不便。更要害的是,其曾经内置到我的刷题插件 leetcode-cheatsheet 中,间接开箱即用,插件版本大于等于 0.9.0 即可。尽管它临时还无奈主动生成像我讲义外面那么残缺的图和动画,然而比文字要直观太多了。前期思考集成更多的语言以及更多的语法个性以及更好的展现成果。
该应用形式非常简单,齐全满足了大家偷懒的需要。你只须要:
- 装置刷题插件 leetcode-cheatsheet
插件如何下载与装置能够在公众号回复插件获取
- 关上 leetcode 中任意一道题目,写代码。
目前反对 Python3,CPP,JavaScript
- 点击下方的 可视化调试
- 按提醒批改代码后点击 Visualize Execution 按钮
如果无奈批改代码,能够先点击 edit code
这里我就想吐槽一下 leetcode 了。干嘛每一道题函数名字都不一样,真没这个必要。比方都叫 solve 不好么?心愿力扣能够考虑一下这个倡议。
- 通过管制区域控制代码执行,右侧会主动同步的可视化地显示变量信息
最初情谊提醒一下。可视化调试举荐在看材料(比方 91 天学算法的讲义)的时候把其中的例题用可视化的形式调试一遍,填平 思路到代码 的鸿沟。之后大家做题不要依赖调试性能,而是先在 大脑中调试一下,而后用工具验证。也就是说这个工具,我仅举荐你在两种状况下应用:
- 看算法思维材料,做其中的例子的时候一步步调试学习。
- 代码有 case 跑不通,先在脑子中过一下,猜想大略出问题的点,而后用工具间接定位到左近通过可视化的形式帮忙你剖析。
最初大家有什么想要的 feature 能够给我公众号后盾或交换群里留言。