分享

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

 AnonymousV脸 2018-12-13

记得以前读书的时候,每每老师讲到数据结构和算法下面就一堆人都在睡觉,不知道是老师讲的无聊还是真的很难,直到毕业我对数据结构和算法的看法都是:难学、学了用处不大。

我相信大部分程序员都是像我一样,进入社会工作,一开始都是做一些基础的重复的工作,根本用不到什么算法和复杂的数据结构。直接靠各种语言的类库堆砌就可以完成几乎所有工作,干嘛吃力不讨好的去研究算法呢,还不如花时间多学习几个框架和语言。

当然,有上述想法的程序员没有什么问题,现在的就业环境就是这样,大部分中型公司并不看重你的对算法和数据结构的了解,面试的时候大量的问题都是关于熟不熟悉某个框架或语言,有没有大数据高并发的开发经验等问题。而大部分程序员靠着平时的经验积累和对框架的熟练运用都可以应付过来,找到一份还不错的工作。

但是,你真的甘心一个程序员的光阴时间(20岁 ~ 30岁)就待在小公司吗?我相信大部分人是不愿意的,能去BAT还是去BAT,我也是一样。

而这样大厂的面试门槛很重要就是算法和数据结构,为什么呢?你在小公司可能用户只有几十万,到了大公司数据一下到PB或者TB级别了,你还是按照小公司的时候的方式来写代码,不管多大的数据都往ArrayList或者HashMap里面装,你觉得OK吗?

另一方面我现在感触很深,不管你是学习前端还是后端,Java还是Angular,这些技术更新迭代太快了(现在Java都11了我还在用8),只要那些开发者不挂我们就永远都要学习他们的一套东西。而数据结构和算法这些东西,那是终身受用的,所有的语言和框架里面都有大量的对于数据结构和算法的应用。当我们掌握了核心的东西,这些东西还难学吗?

以上都是这段时间的一些想法,也许过段时间就变了也说不定。我希望我能保持初心,不断学习。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多