说实话,在程序员日常编码的过程中,涉及到数据结构和算法的地方不是太多。因为数据结构和算法其实在底层的编程语言的相关类已经帮你封装好了,很多时候你只需要调用编程语言的方法就好。
但是对于真正有技术的程序员来说,拥有好的数据结构和算法能力是非常重要的。有的时候,你需要用到算法以及数据结构的能力,去优化你的代码和以及性能。健壮且高效的代码是公司所需要的,所以光是编程语言厉害是不行的。
打个比方,你现在如果出去找工作的话,你会看到很多公司的招聘不只是只强调你的编程语言能力,同时在其他方面的能力,也有一定的要求。比如对于 Java 框架的了解,对于大数据技术、或者 MySQL 数据库技术的了解等等,公司招聘的同学,是希望能够拥有综合技术实力的同学。
在数据结构和算法能力方面,工程类开发的同学可以不用那么注重,但是最基础的算法和数据结构你肯定是要懂的,比如集合类、数据、HashMap、链表、树等数据结构的理解。这些基础的数据结构你平时编码肯定也会使用到。
同时,像排序算法、二叉树的遍历、图的遍历等等基础算法,你虽然不能一下写出来,但是你的脑海中应该对它们有一定的认识,最起码能够理解这些算法的含义,否则你以后再优化某个东西的时候,根本都不知道能用哪些算法来进行优化。
好的程序员,不仅仅能够对于编程语言熟练掌握和应用,同时能够对于计算机专业方面的基础知识掌握的非常好。其实我之前工作的时候,我的前老板就给我推荐了一个算法相关的书籍,这本书叫做《算法》,记得是用Java语言写的,他当时给我话就是,要想往上爬的高,就要基础扎实,让我好好学学数据结构和算法。我现在有事没事就翻翻这本书。
其实程序员还是要全面发展吧,编程语言是一方面,但是编程语言大家都能够掌握,差异就在基础知识上面。你的基础比别人更加的牢固,那么你未来向上发展的加速度就会比别人快,同时定位问题时和开发代码时,你想的就会别人更加的全面,那么老板和公司也会更加的欣赏你,这样你才能更好的发展。
我是Lake,专注大数据技术原理、人工智能、数据库技术、程序员经验分享,如果我的问答对你有帮助的话,希望你能点赞关注我,感谢。
我会持续大数据、数据库方面的内容,如果你有任何问题,也欢迎关注私信我,我会认真解答每一个问题。期待您的关注
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有