当前位置: 华文问答 > 数码

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

2016-01-31数码

我面试过几百个各个层次的程序员,很清楚这是事实,的确很多程序员都缺乏数据结构和算法知识。

原因是什么,从这些程序员的履历背景就能看出来,凡事名校科班毕业的,这方面知识就不差,如果不是名校,或者培训班培训出来的,这方面知识就往往欠佳。名校氛围中,在这方面的教育的确高出一筹。

编程有一个很有趣的特性,表面上看是只需要码代码,真正需要的思维技能不容易考察,而且即使编得不好,你也可以把代码写完,换句话说,即使你不会数据结构和算法,你也能找到工作(难易姑且不说)。如此一来,程序员种自然会出现大量没有接受数据结构和算法训练的成员。

此外,实际工作中,很多人的工作是不需要接触数据结构和算法的,挑挑框架,按照规范写代码,照着文档调用API,如此而已,时间长了,即使学过数据结构和算法也忘了。不会,如果你在学校真认真学过,即使忘了红黑树怎么实现,也不会忘了栈和双向链表是怎么回事。

话说回来,要不要学数据结构和算法呢?

当然要!如果你不会,你依然能找到工作,但在这一行你没法上升得足够高,因为这个金字塔顶端的人可都是会这些的。

我不是歧视非名校毕业的程序员,大家的出身、际遇和运气不同,任何时候只要好好学习努力相当,都是好同志,我只是说明一个事实。

对于还没有参加高考的同学,努把力,考上名校,你的基础知识会更牢靠,将来找工作容易;对于已经参加工作但数据结构和算法知识欠佳的同学,花点时间学一学,不要只是满足于学会什么什么工具和框架,基础知识对你有百益而无一害。