找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 411811|回复: 12

程序人生:一流靠数学,二流靠算法!程序员的数学需要很厉害吗? ...

[复制链接]

该用户从未签到

发表于 2021-2-9 01:25:11 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
网上流传的对程序员的分级方式,不知道大家看到过没:
一流程序员靠数学;二流程序员靠算法;
三流程序员靠逻辑;四流程序员靠SDK;
五流程序员靠 Google 和百度;低端的看高端的就是黑魔法 。

                               
登录/注册后可看大图


说是段子,更是程序员的真实写照。我也知道,大部分普通程序员在开发过程中,用中学数学基础是足以应付的,好像不需要学习高端的数学。
但问题是,以目前的职场环境来说,只要你想再往上走一步、做任何一点带有创新性的技术,最容易遇到的,往往就是数学问题。
比如,算法涉及大量数学基础和相关背景知识,图形处理相关的算法,大量的线性代数矩阵变换等等,Google 还曾用一道数学题作为投递简历的门槛,之前朋友圈就被这个招聘广告牌刷过屏。

                               
登录/注册后可看大图


其实,不止是 Google,我随便翻了翻招聘启事,发现,很多大公司在招应届研发时,都会优先考虑数学专业的毕业生。
无论是数据结构与算法,还是程序设计, 底层原理和思路都源自数学 ,在大数据和智能化的时代,学好数学更是门槛本身。
“程序员不需要学数学,因为工作中根本用不到数学。有学数学的功夫,还不如认真把设计模式、计算机网络、操作系统这些硬知识学好。” 这是很多人的观点,是的,作为程序员,你不需要任何数学知识,也可以写好代码。

                               
登录/注册后可看大图


但我认为,数学学得好不好,将会直接决定一个程序员未来的发展潜力。往大了说,数学是一种思维模式,考验的是一个人归纳、总结和抽象的能力,放到程序员的世界,就是解决问题的能力。
往小了说,不管是数据结构与算法,还是程序设计,其底层原理和思路很多都源自数学。所以很多大公司在招人时,都会优先考虑数学专业的毕业生,因为数学基础好,学习编程会更容易上手。

                               
登录/注册后可看大图


那程序员到底该如何学数学呢?我整理了三位技术专家的看法。
Steve Yegge | 资深程序员

1. 正确学习数学的方法是广度优先,而非深度优先。你要了解的是整个数学领域每个概念的名字,并知道它们要解决什么问题。
2. 把数学当成文科来学,先不用重点看那些算法和证明,只需要了解数学概念的名字、作用、大致步骤、发明人、发明时间、局限等。
3. 数学符号是关闭你通往另一个世界的符咒,如果你看到一堆自己不懂的数学符号,就把它的实现功能简单地当成一个原子操作好了,不要深究太多。
徐文浩 | bothub.ai 创始人

1. 从工作相关的领域开始了解数学,这样你更容易获得正反馈。
2. 把正在学习的数学问题的解法,写一个算法程序实现出来,这是一个不错的练习方法。
3. 你可以选择追一门数学相关的在线课程,跟着老师的节奏来系统理解数学。
刘超 |《趣谈网络协议》专栏作者

阶段一:怎么使用?咱们做工程的,还是实现出来,程序跑起来看。我一开始使用Lucene的时候,因为接口已经十分友好,是很容易实现一个简单的搜索引擎的,这个时候,我还处在第一个阶段。
阶段二:如何实现,原理是什么?只会用可不行,原理都不了解,没法调优和Debug。我这个人爱看源代码,于是就去分析里面的原理,有的部分就比较晦涩,需要结合Debug和代码贡献者的文档才能有所了解,这个时候,我处在第二个阶段,写了大量源码分析的文章。
阶段三:为什么这样实现?其实实现一个东西有好多种方法,作者之所以选择这样实现,都是因为数学算过的,这样的性能或者准确度最高。我在读Lucene代码贡献者的文档的时候,有的作者会列出很多的论文,这里面有大量的数学推演,以及并列的多种方法,你才会发现开源软件的实现也是沧海一粟。这样才能举一反三。
希望对大家有帮助~

如果你想更好的提升你的编程能力,好好学习C/C++编程知识,以后努力成为高薪软件开发工程师的话!

                               
登录/注册后可看大图


欢迎转行和学习编程的伙伴,希望对你有帮助~
回复

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:23 | 显示全部楼层
牛逼!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:27 | 显示全部楼层
非常好!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:24 | 显示全部楼层
转发了!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:25 | 显示全部楼层
赞!赞!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:26 | 显示全部楼层
沙发!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:33 | 显示全部楼层
顶一下!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:42 | 显示全部楼层
支持!!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:37 | 显示全部楼层
不错!!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2021-2-9 02:10:21 | 显示全部楼层
太棒了!!
回复 支持 反对

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-11-23 11:00

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表