重温:数据结构与算法 - 开篇

xwzz.jpg

叨叨两句

颓废了一年,最终还是回来北漂,很多事都不尽人意,也想了很多,还是决定鼓起勇气继续前行。

很幸运接触到王争大佬《数据结构与算法之美》系列专栏,让自己又有了学习的动力。想起大学期间,辅导老师带着我们刷题参加比赛的那段日子,或许那是人生中编程最快乐的时光。最后,借王争大佬的开篇词,激励自己:

“人生路上,我们会遇到很多的坎。跨过去,你就可以成长,跨不过去就是困难和停滞。而在后面很长的一段时间里,你都需要为这个困难买单。对于我们技术人来说,更是这样。”

数据结构与算法

首先,什么是数据结构,什么又是算法?

  • 广义来讲:

    • 数据结构:某类数据的存储结构
    • 算法:操作数据的方式方法

    举例:图书馆中把书籍进行分类,不同的书籍按照“编号-类型”分配到不 同的书架上(eg:001 -人文类、002-科普类等),那么用于分类的“书架”就是存储书籍的数据结构;而图书馆管理员通过书籍类型编号定位到书架,再找到指定的书籍,这种操作方式就可以称之为算法

  • 狭义来讲:

    也是即将要学习的内容

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

小结

数据结构和算法是相辅相成的,这也是为什么数据结构和算法经常放在一起讲,数据结构是为算法服务,算法要作用到特殊的数据结构上。


重点内容:复杂度分析

学习具体的数据结构与算法之前,需要理解一个很重要的概念-复杂度分析

数据结构和算法是让我们更快、更省的解决问题,而如何选对正确的数据结构与算法,这就需要考量执行效率和资源消耗两个方面,那么进行复杂度分析是不可或缺的环节。

重温:数据结构与算法 - 01复杂度分析(一)

重温:数据结构与算法 - 02复杂度分析(二)

重温:数据结构与算法 - 03数组

重温:数据结构与算法 - 04链表(一)

重温:数据结构与算法 - 05链表(二)

重温:数据结构与算法 - 栈

重温:数据结构与算法 - 队列

更新中...

你可能感兴趣的:(重温:数据结构与算法 - 开篇)