数据结构与算法-02-如何抓住重点,系统高效地学习数据结构与算法

本系列是阅读极客时间专栏《数据结构与算法》的读书笔记,希望能够记录自己学习过程中的感想和所学,努力提升自己。

在02篇中,作者主要讲解了在本专栏中,学什么?怎么学?的问题。

学什么?

  • 时间复杂度和空间复杂度

首先要知道什么样的数据结构和算法是好的,什么是不好的,怎么样衡量好不好呢?那就是用时间复杂度和空间复杂度来分析。时间复杂度来分析算法的快慢,空间复杂度来分析数据结构所占用的空间。

  • 10个数据结构和10个算法
    10个数据结构:算法、链表、栈、队列、散列表、二叉树、堆、跳表、图、Tire树
    10个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配。

现有的数据结构和算法非常多,如下图所示,都学肯定不现实,先学习上述所说的10中数据结构和10中算法。
数据结构与算法知识点

怎么学

  • 边学边练,适度刷题
  • 多问,多思考,多互动
  • 打怪升级学习法
    坚持,写博客,做笔记
  • 知识沉淀
    遇到不懂得,多看同类问题,多看几遍。