数据结构和算法-概述

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

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

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

二、为什么学习数据结构和算法?

  1. 面试(迫于无奈...)。
  2. 掌握数据结构和算法,不管对于阅读大神框架或源码还是理解其背后的设计思想都是很有用的。
  3. 对于编程有追求,那就不要只会写凑合能用的代码(只考虑功能)。性能的好坏也是评判代码质量的一个非常重要的标准
  4. 掌握了数据结构和算法,你看待问题的深度、解决问题的角度就会完全不一样。站在巨人的肩膀上可以看的更高、更远

三、如何学习数据结构和算法?

    我们学习数据结构和算法,并不是为了死记硬背几个知识点。我们的目的是建立时间复杂度、空间复杂度意识,写出高质量的代码,能够设计基础架构,提升编程技能,训练逻辑思维。所以学习数据结构和算法的过程中,不要死记硬背,而是要学习它的"来历"、"自身特点"、"适合解决问题"、"实际应用场景"。要多辩证地思考,多问为什么。并且要掌握一个最最重要的技能--复杂度分析!!!

四、数据结构和算法知识点图

五、下面列出一些常用的数据结构和算法

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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章