怎么看待程序员普遍缺乏数据结构和算法的知识?

大数据 数据分析 算法
在很多程序员看来,数据结构,算法这一类的东西感觉没用,在实践中都不常用,所以都会很忽视这类内容,但是在很多公司看来,尤其是大公司看来数据结构和算法这种东西确实最有用,而且经常在笔试和面试中出现。为什么会这样呢?

在很多程序员看来,数据结构,算法这一类的东西感觉没用,在实践中都不常用,所以都会很忽视这类内容,但是在很多公司看来,尤其是大公司看来数据结构和算法这种东西确实最有用,而且经常在笔试和面试中出现。为什么会这样呢?

怎么看待程序员普遍缺乏数据结构和算法的知识?

1、看似最枯燥、最基础的东西往往具有最长久的生命力

像数据结构,算法这类东西,还有有一些计算机原理之类的知识,这些东西都是编程和实践的根本。他们看似枯燥和基础,但是具有最长久的生命力。

我知道,你可能熟悉各种框架,各种开源库的使用,但是那又怎样?看着各种框架和开源库的文档,只要有编程基础,谁不会照着葫芦画瓢呢?

不要天天谈什么框架,什么库,框架每年层出不穷,可是扒下框架那层炫酷漂亮的外衣,里面还是那些最基础的知识和原理。就是这些算法,数据结构,计算机网络,计算机原理这些看似基础的东西。如果这些掌握扎实了,你才有更加深一步的可能。

编程语言和编程框架等这些表面的东西,对于一个基础扎实的程序员来说,学习起来很快,成长也很快,如果这些基础和原理都懂,你就可能会写出这样的框架来。技术更新迭代快,语言层出不穷,但是数据结构,算法,计算机原理这类的东西确实没有变。

2、数据结构和算法在面试的时候最容易量化和体现能力

什么意思呢?在面试或者笔试的时候,面试数据结构和算法,可以面出你的思维能力,思考能力,这个能力对于编程来说很重要。比如:如果面试你使用过什么框架吗?你说:会,使用过,然后你谈了谈使用这些框架的一些知识和遇到的坑,以及怎么解决的?通过这样的问题,不能看出的思维能力和编程能力,只能看出你确实会用这个东西。(http://godcoder.me/about/)

而面试算法和数据结构不一样了,以为面试这种东西可以让你写出来,或者写伪代码,而且这些能力如果你有,你的成长空间也高。面试你编程的实践能力,不可能让你上机去敲一个模块的实现吧?而让你写个算法和数据结构却很方便,也可以量化。欢迎大家关注我的微信公众号:非著名程序员

所以,很多人平时不用算法和数据结构,在跳槽的时候,也会提前去复习算法和数据结构的知识,因为这是面试中很常见的问题。但是我还是建议大家能够一直有这种能力。不要因为不常用而忽视这些基本的东西,这些东西才是精华。

目前大部分程序员是不重视这类东西的。而优秀的程序员是非常重视这些东西的,所以他们才优秀。要想优秀的话,你懂得。

这是我在知乎的一篇回答,感觉非常的有意义,所以在这里分享给大家。

责任编辑:未丽燕 来源: 程序人生
相关推荐

2012-02-08 10:25:54

程序员

2018-01-09 20:29:15

程序员日本程序员中国程序员

2018-01-17 16:18:06

2012-09-19 09:21:59

2012-09-20 09:19:30

程序员非程序西方程序员

2020-03-24 11:19:45

数据结构程序员存储

2012-11-05 10:27:41

程序员数据结构

2012-02-09 10:02:41

宅男程序员

2023-10-19 15:11:48

Redis

2018-11-01 15:20:17

前端程序员编程语言

2022-02-22 15:27:46

数据结构容器算法

2020-03-04 11:10:14

数据结构程序员编译器

2020-04-02 15:37:58

数据结构存储

2020-08-12 08:30:20

数据结构算法

2020-07-13 08:37:28

程序员技术职场

2017-11-14 21:30:15

2023-11-01 08:01:48

数据结构软件工程

2024-09-03 13:24:12

2021-06-08 10:41:00

Go语言算法

2012-09-25 17:20:00

开发技术周刊
点赞
收藏

51CTO技术栈公众号