美文网首页
2020-08-05 如何学习数据结构与算法

2020-08-05 如何学习数据结构与算法

作者: 竹blue | 来源:发表于2020-08-05 23:01 被阅读0次

    数据结构和算法的定义

      - 从广义上讲,数据结构是指一组数据的存储结构,是一种组织数据的静态方式。算法是操作数据的一组方法。如:图书馆储藏书籍,一般按照类别进行存储和编号进行存储,那么这个类别和编号就是书籍的数据结构,查找书籍的位置的方法就是算法。
      - 从狭义上讲,一般是指某些著名的数据结构和算法,比如队列、栈、堆、二分查找、动态规划等。

    数据结构和算法的关系

      两者之间是相辅相成的关系。数据结构是为算法服务的,算法要作用到特定的数据结构之上。如:数组具有随机访问的特性,常用的二分查找算法需要用数组来存储数据,但是如果用链表这种数据结构,那么二分查找算法就无法正常工作。

    数据结构和算法的重点

      1. 首先需要掌握一个数据结构与算法中最重要的概念--复杂度分析 [包括:时间复杂度分析方法和空间复杂度分析方法]。数据结构与算法主要是为了解决如果更省、更快的存储和处理数据。因此我们需要一个考量效率和资源消耗的方法--\color{red}{复杂度分析}.
      2. 数据结构与算法的正文内容

    数据结构与算法知识点总结
       :数组、链表、栈、队列、散列表、二叉树、堆、跳表、图和Tire树。
       :递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划和字符串匹配算法。
     一般掌握了这些基础的数据结构和算法,在学校更复杂的数据结构和算法就会非常快了,需要注意的是:在学习数据结构和算法的过程中不用死记硬背,而是要学习它的“来历”“自身特点”“适合解决的问题”“实际的应用场景”

    如何学习数据结构与算法

      1. 边学边练,适度刷题学习的目的是掌握然后应用,有面试需求可以进行适度刷题,推荐LeetCode。
      2. 多问、多思考、多互动学习最好的方法是联机学习,几个人一起学习,讨论,有问题及时提出寻求答疑。
      3. 打怪升级法学习过程中,最大的问题是坚持不下来,游戏都玩过,一些简单的游戏玩的不亦乐乎,究其原因无非是每天的经验值在一点一点增加,针对数据结构与算法这部分内容的学习,可以采取文档输出等方式,每天看着浏览量的增加,学习起来也会越来越有动力。
      4. 知识需要沉淀,不要试图快速掌握所有知识学习知识是一个反复迭代,不断沉淀的过程,遇到不懂得知识点可以需求他人、原文文档的帮助也可以沉淀一下,过几天再学一遍,书读百遍其义自见也是有一定道理的。

    总结

      今天主要介绍了一下数据结构与算法这门课程的主要内容,包括:数据结构与算法是什么解决什么问题两者之间的关系判断性能依据--复杂度分析常见的数据结构和算法以及学习的小技巧,希望通过上述简单介绍大家心里关于数据结构与算法有一个大概的印象,希望在今后的学习中一起努力、互相借鉴、一起成长。加油!数据结构与算法出自学习专栏的个人总结,不可用于商业目的

    相关文章

      网友评论

          本文标题:2020-08-05 如何学习数据结构与算法

          本文链接:https://www.haomeiwen.com/subject/hgagrktx.html