《数据结构与算法之美》专栏学习笔记_01

 本系列是极客时间中前 Google 工程师王争《数据结构与算法之美》专栏的学习笔记,想加强数据结构及算法能力的同学可以直接购买此专栏,数据结构与算法之美跳转链接 

写笔记先找找哪个思维导图工具好用

在单位画思维导图用的是mindmaster,因为用mindmaster习惯了自己电脑就下载了一个用,没想到输了好多个节点之后不给添加子主题了,主题样式受限制就算了没想到内容也受限制,要充钱才行。只好搜其他的思维导图工具,发现多用一点功能也都是要花钱的,比较一下用了xmind,先试用着。因祸得福,xmind有几个手绘主题很可爱,mindmaster里面没有,哈哈。以后都用手绘风格的,比其他格式灵动多啦。

以下思维导图是根据《数据结构与算法之美》王争老师画的思维导图自己重新画的,虽然老师已经画了思维导图可以直接看,自己再画一遍是不一样的,会有一个整体的印象。这张图几乎涵盖了所有数据结构和算法书籍中都会讲到的知识点。

数据结构与算法鸟瞰图

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

 然后王争老师还总结了20个最常用的、最基础的数据结构与算法,不管是应付面试还是工作需要,只要集中精力逐一攻克这20个知识点就足够了。嗯,先掌握这些基础的数据结构和算法,对自己的要求就是一步一步来,避免一知半解,扎扎实实地学。

《数据结构与算法之美》专栏学习笔记_01_第1张图片

 为什么数据结构和算法要放在一块儿讲呢?

“从广义上讲,数据结构就是指一组数据的存储结构。算法就是操作数据的一种方法。从狭义上讲呢,是指某些著名的数据结构和算法,比如队列、栈、堆、二分查找、动态规划等。这些都是前人的智慧结晶,我们可以直接拿来用。”

“那数据结构和算法有什么关系呢?为什么大部分书都把这两个东西放到一块儿来讲呢?这是因为,数据结构和算法是相辅相成的。数据结构是为算法服务的,算法要作用在特定的数据结构之上。因此,我们无法孤立数据结构来讲算法,也无法孤立算法来讲数据结构。”

“比如,因为数组具有随机访问的特点,常用的二分查找算法要用数组来存储数据。但如果我们选择链表这种数据结构,二分查找算法就无法工作了,因为链表并不支持随机访问。”

你可能感兴趣的:(数据结构与算法,程序人生,学习,算法,数据结构)