数据结构与算法
内功修炼之路~第一集
如何学习好数据结构与算法这门枯燥且乏味的课程?
首先我们要解决的问题是:如何学?怎样学?
那么就要做到以下三点:
Chunk it up切碎知识点
Deliberate Practicing刻意练习
Feedback反馈
那么又如何Chunk it up切碎知识点呢?
下面是我为你们切好的:
数据结构知识点
大家自己可以尝试一遍,绘制自己的数据结构和算法脑图,用脑图的方式把知识的脉络串联起来,不管对于学习新知识还是巩固已有知识,都是一种很好的学习方式。在绘制过程中可以查阅资料,补充目前掌握欠缺的部分,找到自己薄弱的地方。后面再通过课程的学习和刻意练习,动态地将自己绘制的脑图逐步补充、完善,从而达到真正的融会贯通。
Deliberate Practicing刻意练习:
- 刻意练习—过遍数(五毒神掌)即五遍以上
- 练习缺点,弱点地方
- 克服自己在练习过程中的 不舒服,不爽,枯燥。
Feedback反馈:
- 即时反馈
- 主动型反馈(自己去找)
- 高手代码(GitHub,LeetCode,etc)
- 第一视角直播
- 被动式反馈(高手给你指点)
- code review 给你点评
- 高手打给你看
另外在这里讲讲刷题技巧
五遍刷题法
- 5分钟:读题+思考
- 直接看解法:注意! 多解法,比较解法优劣
- 背诵,默写好的解法
- 马上自己写—>LeetCode提交
- 多种解法比较,体会—>优化
- 过了一天之后,再重复做题
- 不同解法的熟练程度—>专项练习
- 过了一周:反复回来练习相同题目
- 面试前一周恢复性训练
- 做算法题的最大误区:只做一遍
切题四件套:
- Clarification
- Possible solutions
- compare(time/space)
- optimal(加强)
- Coding(多写)
- Test cases
好书推荐:Outliers