[数据结构与算法]01 为什么要学数据结构与算法

从今天起,我打算写一个系列,关于数据结构与算法.这篇文章,算是一个开篇之词吧.

数据结构与算法,操作系统,计算机组成原理,还有计算机网络,这些内容在实际工作中你用到了多少?是不是除了面试的时候会问到,好像写代码的时候,也没怎么用,对吧?况且就算用到,我只要会调用 Java API ,开发框架用的相当熟练,代码照样 6 的飞起,那我为什么还要学习数据结构与算法呢?
Search for meaning ,为自己当下做的事情,寻找一个意义.

你真的想在工作中一直 CRUD 嘛?
对于一名业务开发工程师来说,可能每天要做的事情就是对数据库进行 CRUD(增删改查) 操作,更多的是利用已经封装好的接口,类库来把业务实现,很少需要自己去手写实现数据结构和算法.
但是一年一年的这样 CRUD 过去,你敢说自己拥有 10 年的工作经验,而不是 1 年的工作经验重复了 10 年?
好吧,就算你敢说,每天在工作中,一直 CRUD ,也没有想过去优化自己的代码,没有想过提高性能,你真的愿意一直这么下去吗?

打造独属于你的能力.
有人说,对于程序员这个行业来说,就是吃青春饭的,只要超过了 35 岁,再继续走下去就很难了.为什么?因为你拼体力拼不过比你更年轻的,你拼学习也拼不过那些年轻的.
这些是事实,但是随着年龄的增长,你也有自己独特的优势,那就是经验.
同样一个业务的代码实现,年轻人需要用上千行甚至是上万行代码去实现,而你只用了几百行的代码时(夸张一下);当年轻人写出来的代码,性能一般, bug 不少,扩展性也不强的时候,而你写的代码却没有这些问题,甚至可以到 Github 上让很多人来使用,我觉得这样的你,被公司辞退的可能性很小.
算法可以帮你打造这份,独属于你的能力.

你想进入大厂工作嘛?算法是你必须要经历的一关啊!
我觉得对于程序员来说,进入阿里,腾讯这些大厂应该是每个人都希望的,那是一个更广阔的平台,有很多成长的机会,能够接触到上亿级的并发.
如果想要进入这些大厂,算法是必经之路.
曾经看到过一个事情:有一位面试人大学本科是数学系,但是对计算机很感兴趣,去面试一家大厂,虽然其他方面答的都不是很好,但是算法这一关没有难住他,就这样他被录取了.
对于大厂来说,相对于短期能力,他们更看重你的长期潜力.就像建立大厦一样,只有地基稳固,上面的高楼大厦才会稳固.
算法,就是你向上走的地基.

人和人之间的差距在哪儿?
人和人之间的差距到底有多大?我觉得就是一个大脑的距离.一个人的大脑思考能力,从某种程度上来说,直接决定了这个人能够走多远,能够取得多大的成就.
值得开心的是:大脑的思考能力是可以被训练出来的.而算法是为数不多,也是最为有效的方法之一.

如果想要扎实自己的计算机内功,向架构师方面走;想要提升看问题的深度,让自己站在一个更高的层面上;想要提高大脑的思考力,遇到问题能够抓住本质,绕不开数据结构与算法.

以前也断断续续的学习过数据结构和算法,但是都不够系统.这次打算花上几个月的时间,把算法慢慢磨透.
我没有多厉害,只是出于对技术的追求,想要不断精进自己的技能,所以在学习过程中,难免会出现错误,如果您发现,可及时和我反馈.

以上,如果您对学习数据结构和算法也感兴趣,可以持续关注我的博客(又开始不要脸了)
最后,感谢您的阅读~

posted @ 2019-10-13 20:35  Developer_lulu  阅读(145)  评论(0编辑  收藏  举报