说实话,在程序员日常编码的过程中,涉及到数据结构和算法的地方不是太多。因为数据结构和算法其实在底层的编程语言的相关类已经帮你封装好了,很多时候你只需要调用编程语言的方法就好。
但是对于真正有技术的程序员来说,拥有好的数据结构和算法能力是非常重要的。有的时候,你需要用到算法以及数据结构的能力,去优化你的代码和以及性能。健壮且高效的代码是公司所需要的,所以光是编程语言厉害是不行的。
打个比方,你现在如果出去找工作的话,你会看到很多公司的招聘不只是只强调你的编程语言能力,同时在其他方面的能力,也有一定的要求。比如对于 Java 框架的了解,对于大数据技术、或者 MySQL 数据库技术的了解等等,公司招聘的同学,是希望能够拥有综合技术实力的同学。
在数据结构和算法能力方面,工程类开发的同学可以不用那么注重,但是最基础的算法和数据结构你肯定是要懂的,比如集合类、数据、HashMap、链表、树等数据结构的理解。这些基础的数据结构你平时编码肯定也会使用到。
用计算机做事瓶颈是在一切事物到转化成数学计算问题,也就是人们专业术语的''建模'',有了"数模"编程就顺风顺水了,能用诗歌般地写出运行程序就是高手了。
沈阳假一线城市程序员一枚,通过个人经历来,不一定具有普遍性,但是相对来说可能是一部分程序员都经历过的。
首先,要看你在什么阶段,如果你是在校生,那么数据结构和算法必须要会,而且越厉害越好,这是你去大厂bat的敲门砖,因为校招的很多面试认为,大学唯一考量要给学生的水平那就是专业课,专业课里面比较有难度的就是数据结构。如果你是已经工作的程序员,那么就看你从事的行业了,我是做javaweb的涉及数据结构和算法就很少,但是我有同学做搜索引擎的就需要的多了。
其次,看你想要达到什么高度,虽然我是做javaweb目前工作中用的少,但是涉及深层次的源码,java语言中典型的hashmap,底层不仅涉及数据结构,还涉及数学知识,那么你要精通哪数据结构和算法就必须厉害。
最后有一点就是,编程语言很厉害的其实很多数据结构和算法都很厉害,这两个事情有些时候是相辅相成的,因为有些时候你想写出优秀的代码,精通数据结构是必不可少的。
据说是这样。我家没业内人士,但大家族里有从事软硬件工作的人士,任职省无委高工、银行计算中心主任等,他们在学生时代,都是语文、数学、物理超级好的学霸~
编程语言是怎么来的?就是数据结构和算法而来的
不一定,数据结构和算法是可以对程序进行优化。你可以先学习编程,同时也就会学到常用的算法。等你编程水平提升时可以再学数据结构,来优化你编写的程序。
算法,罗辑思维最重要,语言占比非常低,让你做一个几百万数据的排行榜,你肯定是会想算法,而不是用什么语言来实现。
看个人的发展,其实学编程也类似于建一栋楼,首先要把地基打好,而数据结构和算法就是编程的地基,一个程序员要想走的高和远,扎实的基础是必不可少的
你好,要看你从事计算机哪一块,如果做维护涉及不多,做开发相对多一些,开发也分多种,汇编好像不火了。现在火的是安卓开发。
编程语言相当于刻刀,你各种技法玩儿得溜,但是真正想雕刻出一件好的作品,要有一个明确的想法,即怎么运用你的技法,最终做成的是一个什么样子。
所以数据结构和算法其实是比编程语言更重要的东西。怎样实现一个功能?你要思考的不是语言层面的东西,而是逻辑,“这个变量的值有几种可能?如果这个变量值为空,该怎么处理?”“嵌套循环的性能太差了,有没有办法优化一下?”“为了fix这个bug,方案A和B,哪个更好呢?”诸如此类。