01|为什么要学习数据结构和算法?
- 越是厉害的公司,越是注重考察数据结构与算法这类基础知识。相比短期能力,他们更看中你的长期潜力。
- 基础框架中,一般都揉合了很多基础数据结构和算法的设计思想。
- 高手之间的竞争在于细节,对编程有追求。
我为什么要学
- 工作中越发发现没有基础知识,就只是CURD,想要打破现状
- 写出性能更好,更优雅的代码
- 学会算法的思想,这是一种生活的哲学
- 我的flag是阅读更多的源码,学习框架和设计思想,以后自己写个开源框架
- 想成为master
02|如何抓住重点,系统高效地学习数据结构与算法?
Step 1:复杂度分析,相当于武功的心法,必须掌握
Step 2:学习重点是10 个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie 树;10 个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法。
方法论:
1 边学边练
2 多问,多思考,多互动
3 定目标,每课写一篇学习笔记
4 学习知识的过程是反复迭代、不断沉淀的过程。不要心急。