第1课:为什么要学习数据结构与算法?如何学习?

什么是数据结构

广义上讲:数据结构就是一组数据的存储结构。
狭义上讲:队列、栈、堆、树 等常用的数据结构。

什么是算法

算法(Algorithm)就是操作数据的一组方法。
一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
比如:二分查找法、递归算法、各种排序算法。

数据结构和算法的关系

两者是相辅相成的。数据结构为算法服务,算法作用在特定的数据结构之上。
比如:因为数组具有随机访问的特点,二分查找算法需要用数组来存储数据,如果选择链表存储的话,二分查找算法就无法工作。

为什么要学习数据结构和算法

为什么要学习数据结构和算法,很多人第一想到的就是面试需要。这并没有错,只是太片面了【用大家的话就是‘’肤浅‘,没有追求,哈哈哈’】。
我列了以下几点【当然还有很多其他的因素】
1、通过大场面试,比如BAT等
2、写出性能更优的代码
如果你是写底层系统,各种框架的代码,对性能就要求比较高了。比如Spring、Redis等等,在这其中就有很多的基础的数据结构和算法的思想。
3、可以懂得各种封装接口,代码库背后的原理,做到知其然知其所以然
如果你只是一个写业务代码的底层码农,当面临选择ArrayList 和LinkedList的时候,这个你肯定清楚为什么选择哪个吧。
4、学习数据结构和算法后,你看待问题的深度、理解问题的角度完全不一样
5、做一个有梦想、对编程有追求的码农,要想自己的代码有质的变化,要想自己突破自己,必须学习数据结构和算法。

学习数据结构算法难吗

我刚开始也觉得挺难的,感觉很难掌握,学了没几天就忘记了。

其实不是这样的,不是难,是懒,我们总是三天打鱼两天晒网,每次就是只停留在数组、链表,而且还没真正的掌握。

闻道有先后,很多只是你还不知道罢了,坚持学下去,相信你会有收获的。

如何学习数据结构和算法

重要的是坚持、挑重点学习,下面我会逐步的完善这个图。
数据结构与算法思维导图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值