一流程序员学数学,二流程序员学算法,低端看高端就是黑魔法。
可能有人以为这就是个段子,但有过工作经验的都知道,这其实就是程序员的真实写照!
想一想,我们学习、求职、工作的场景中,你一定因为数学不行而为这些事儿发愁过:
1)一个需求,你写10行代码,别人1行就搞定了,而且还知道这个算法空间与事件复杂度!
2)数学不好学数据结构、算法等,根本听不懂!因为这些核心原理都是数学,而且光会基础数学远远不够,还需要概率论,微积分、优化理论等等!
3)公司产品要做用户个性化推荐,数学不好的根本搞不懂推荐逻辑是什么,更别说做优化了。
4)想学 AI 等新技术,发现核心都是数学,不会的话,自己连入门的机会都没有。
每个程序员的困境都不尽相同,但都可以归纳成一句话:数学不好,干什么都不行!
由此可见,数学的好坏,会直接决定一个程序员的发展潜力!
可糟心的是,这些问题,虽然90%的程序员都曾遇到过,但是从未得到过重视!
01
问题出在了哪里?
其实,只是我们努力错了方向。
我们在初学编程时,都过分关注功能实现,而忽略了代码的底层逻辑,而所有的代码,其核心原理都是数学。
但是学习程序员所需的数学,我不建议把学校的数学书拿出来再啃一遍,耗费大量时间不说,关键是无法与实际应用结合,学了还是不会用!
我们在了解新技术时,通常会分成三个阶段:
第一阶段是,怎么用;第二阶段是&#