什么是数据结构?什么是算法?

从广义上讲:
数据结构就是指一组数据的存储结构。算法就是操作数据的一组方法。

从狭义上讲:
是指某些著名的数据结构和算法,比如队列、栈、堆、二分查找、动态规划等。

数据结构与算法的关系:
数据结构和算法是相辅相成的。
数据结构是为算法服务的,算法要作用在特定的数据结构之上。
**

学习的重点在什么地方?

  1. 首先要掌握一个数据结构与算法中最重要的概念——复杂度分析

**

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

    这张里面几乎涵盖了所有数据结构和算法书籍中都会讲到的知识点,但作为初学者,或者一个非算法工程师来说,你并不需要掌握图里面的所有知识点。


    3. 20 个最常用的、最基础的数据结构与算法
    10个数据结构:

  • 数组
  • 链表
  • 队列
  • 散列表
  • 二叉树
  • 跳表
  • Trie 树

10个算法:

  • 递归
  • 排序
  • 二分查找
  • 搜索
  • 哈希算法
  • 分治算法
  • 回溯算法
  • 动态规划
  • 字符串匹配算法

**

一些可以让你事半功倍的学习技巧

1. 边学边练,适度刷题

边学边练”这一招非常有用。建议你每周花 1~2 个小时的时间,集中把这周的三节内容涉及的数据结构和算法,全都自己写出来,用代码实现一遍。这样一定会比单纯地看或者听的效果要好很多!

2. 多问、多思考、多互动

学习最好的方法是,找到几个人一起学习,一块儿讨论切磋,有问题及时寻求老师答疑

3. 打怪升级学习法

学习的过程中,我们碰到最大的问题就是,坚持不下来。所以,我们在枯燥的学习过程中,也可以给自己设立一个切实可行的目标,就像打怪升级一样。

4. 知识需要沉淀,不要想试图一下子掌握所有

学习知识的过程是反复迭代、不断沉淀的过程。