程序员需不需要学数学?从Google一道面试题说起...
点击上方“Python大本营”,选择“置顶公众号”
python大本营 IT人的职业提升平台
数学对于一位程序员到底意味着什么呢?
先跟你分享一个关于 Google 面试题的故事:
2004 年的某天,硅谷的交通动脉 101 公路上突然出现了一块巨大的广告牌,上面是一道数学题:{e 的连续数字中最先出现的 10 位质数}.com。
e写出来大概是这样的:
e ≈ 2.7182818284 5904523536 0287471352 6624977572 4709369995 9574966967 6277240766 3035354759 4571382178 5251664274 2746639193 2003059921 8174135966 2904357290 0334295260……
这道题的意思就是找到 e 中最先出现的 10 位质数,得出一个网址(也就是标红的那几位数)。
进入网址后,你会看到 Google 为你出的第二道数学题。成功解锁这两步,Google 会告诉给你发一封邮件:
“...我们每天收到太多简历,所以出了这一道数学题,为了筛选那些想要到谷歌工作的候选人,我们需要聪明又伟大的大脑来帮助我们改变世界!”
Google用这道面试题告诉我们,数学对于一位程序员是一种机会、一次惊喜、一场挑战。
数学不好就不能当程序员了吗?
为什么同样是程序员,有人在搬砖盖楼,有人在设计创造?如果编程是基础,那么数学就是天花板,你不去学是永远够不到的。在感叹同样是程序员待遇千差万别之前,想想究竟是差在哪里了呢?
一名有过10多年开发经验的老程序员曾说过:“所有程序的本质就是逻辑。技术你已经较好地掌握了,但只有完成逻辑能力的提高,你才能成为一名职业程序员。打一个比方吧,你会十八般武艺,刀枪棍棒都很精通,但就是力气不够,所以永远都上不了战场,这个力气对程序员而言就是逻辑能力(其本质是一个人的数学修养)。”
一位正在找工作的计算机毕业生在某乎提问:“数学都还给老师了,还能找到好工作吗?”得到了这样的答案:当然不需要数学特别好,但是最好有一定的数学思维能力。如果你已经在迈入社会找工作了,还只有高中的数学思维能力,那还是比较堪忧的,虽然也不至于找不到工作,但是跟「好工作」基本无缘了。
所以,不会数学当程序员是没什么问题,但这一点,恰恰可以定义一个程序员的优秀与平庸。
程序员到底要怎么学数学?
我们邀请到帝国理工出身的王文凯老师策划了一门《程序员的数学》系列课程,课程专为程序员设计,拒绝枯燥的讲解例题,通过生动的案例深入浅出学数学!
扫码购买⬆️
课程一:《零基础入门微积分》
课程二:《数理统计与概率论》
课程三:《代码学习线性代数》
课程四:《数据处理的最优化》
课程五:《马尔可夫随机过程》
「五门数学经典课程难得一见打包售卖!」
「课程上线1小时内售出百余单,现在订阅仅19元!」
「这次真的没有理由不学了!福利已发,持续涨价中!」
现在订阅有什么优惠?
与数学最配的还是人工智能课程,现在订阅《程序员数学》系列课程,特享指定优惠59元即可购买Google Developer Experts 彭靖田老师的《玩转深度学习》课程: