程序员为什么一定要学好数学?驻足听一下“老人言”

讲一下自己的惨痛经历!三个方面:

1、数学?不存在的,老子只学专业课!

2、数学?不学不行,老子还得去补一下!

3、数学?不仅仅要学,还要深入学!

1、数学?不存在的,老子只学专业课!

学习之初,很多人都会有这样的困惑。包括我在内,我想学计算机专业,老师你就直接单枪直入,教我专业性的东西啊,光教一些跟编程八竿子打不着的数学干啥?!

这样导致的一个结果就是,每次基础学科考试总是应付了事,抱着能过能及格的心态一路走来,不遇坎坷就一直坐着自由落体的运动!

2、数学?不学不行,老子还得去补一下!

我学习数据结构和算法时,总感觉自己用起来没有得心应手的感觉,做一些算法优化的时候,基本上也是只能现搬书里的算法,遇到不太一样的问题,就不知道怎么解决了。就比如那些什么排序,快速排序堆排序希尔排序。。。只能记住他们的时间复杂度和空间复杂度和写法,却从来不知道这些算法是怎么设计出来的,这些算法为什么是正确。

于是开始不断地翻看算法相关的书籍,原因正是数学基础不好,因为没有从根基上了解其原理,所以学习起来总感觉自己在中间飘着。

其实无论我们以后是学习哪一门编程语言,或者说要学习大数据、人工智能等,数学是一个很重要的学科。

3、数学?不仅仅要学,还要深入学!

计算机归根到底在cpu执行的都是指令操作,每个指令最终都是靠0101二进制来存储和解析,这就是数学里面最基本的东西。所以说,计算机和数学密不可分。

举例说明:

归纳证明法和递归编程的关系非常紧密,你不理解其中一个,就不可能真正理解另外一个。你可能不知道术语基本情况和归纳假设,但是如果你不能理解这些概念,你就没有办法写 出正确的递归程序。所以,即使是在与数学无关的领域内,不理解这些数学概念的程序员也会遇到很多困难。 优化方法取决于函数的形式,从目前看,最优化方法通常是基于微分、导数的方法,例如梯度下降、爬山法、最小二乘法、共轭分布法等。 还有线性代数中的矩阵、转置、秩 分块矩阵、向量、正交矩阵、向量空间、特征值与特征向量等在数据分析中都有很大的关系。

综上:如果想要在IT行业技术上有突破深入发展,还是要深入学习数学的。不能说你为了学编程就是写点应用逻辑,这样多没意思。什么编译器,操作系统,浏览器,数据库,游戏引擎,大学期间都可以自己试试造轮子写一写,学习过程中不要老是用别人的API,老是用别人写的库,要度尝试自己写内核,虽然一开始可能会很烂,但毕竟能让自己学到东西不是?

原文地址:https://www.cnblogs.com/qf-dd/p/10240343.html

时间: 2024-08-08 15:32:01

程序员为什么一定要学好数学?驻足听一下“老人言”的相关文章

程序员代码面试指南: 数学计算 在行列都排好序的矩阵中找指定的数

#include<bits/stdc++.h> using namespace std; int main() { int n,m,k; cin >> n >> m >> k; int a[n][m]; for(int i = 0;i < n;++i) for(int j = 0;j < m; ++j) { cin >> a[i][j]; } int x ; int col = m - 1; int row = 0; while(ro

向.Net/Unity 程序员推荐一个十分因吹斯听的网站:sharplab.io

0x00 前言 & 过程 & 结论 今天发现了一个十分有趣的网站: https://sharplab.io/ 网站的页面并不复杂,功能大体上能够在题图中得到概括.发现它的过程也很偶然,并且深感自己的确孤陋寡闻,直到今天在推上看到被这个能够quick online-try-it-out的网站惯坏的同事发推才发现它.(顺便求关注:@chen_jd) 简单来说,这个网站可以显示.net代码(比如c#)的编译中间过程和结果. 由于.net有众多不同的实现,因此网站很贴心的提供了各种不同的版本. 编

学好数学能让程序员的水平更高

I've been working for the past 15 months on repairing my rusty math skills, ever since I read a biography of Johnny von Neumann. I've read a huge stack of math books, and I have an even bigger stack of unread math books. And it's starting to come tog

【转】程序员怎样学数学

I've been working for the past 15 months on repairing my rusty math skills, ever since I read a biography of Johnny von Neumann. I've read a huge stack of math books, and I have an even bigger stack of unread math books. And it's starting to come tog

[转] 程序员怎样学数学

Source:http://article.yeeyan.org/view/pluto/2365 --------------------------------------------------------------------- 读后感: 高中的时候数学成绩还不错,150分的卷子基本能保持在135以上.但是总感觉我的数学思维和数学修养仍然没什么提高.NUAA自招失败的经历让我彻底发现了这一点.大一学了一年的高数,又被繁杂的公式折磨得死去活来. 总感觉真正的数学不应该是这样的.但是真正的数

一个优秀的程序员需要擅长数学吗

来自DevStore 成为优秀的程序员,我需要擅长数学吗?相信很多年轻的程序员也问自己同样的问题.在浏览相关话题时,出现的答案模式被归结为以下三个主要类别: · 需要 · 不需要 · 看情况 貌似「需要」和「不需要」经常带有个人主观偏见,反而显得有点儿草率的反应综合征.为了成为一名优秀的程序员,一个人是否需要擅长数学的问题,可以从哲学和技术两个方面解答. 首先,我们必须尝试建立擅长数学的资格.一个人可以在既定数学原理或建模方程上,明白全局概念以适应情况,而另外一个人或许在数学的分析部分,比如长于

[转] - 程序员怎么学习数学

I've been working for the past 15 months on repairing my rusty math skills, ever since I read a biography of Johnny von Neumann. I've read a huge stack of math books, and I have an even bigger stack of unread math books. And it's starting to come tog

程序员到项目经理:从内而外的提升

转自:http://www.cnblogs.com/watsonyin/archive/2012/09/10/2679528.html 目录 从程序员到项目经理(一):为什么要当项目经理 从程序员到项目经理(二):升职之辨 从程序员到项目经理(三):认识项目经理 从程序员到项目经理(四):外行可以领导内行吗 从程序员到项目经理(五):程序员加油站,不是人人都懂的学习要点 从程序员到项目经理(六):程序员加油站 — 懂电脑更要懂人脑 从程序员到项目经理(七):程序员加油站 — 完美主义也是一种错

什么是真正的程序员

什么是真正的程序员 这篇文章的原文来自:A Little Printf Story作者仿照<小王子>中的情节,通过小printf遇见的不同类型的程序员,最后悟出什么才是真正的程序员!第一次翻译有很多不妥,欢迎留言指正. 文章略长,但是耐心读完,你肯定会受益良多! 第一章 (推荐看完整篇文章,再回过头看一遍第一章) 我非常幸运出生在一个电脑和电子游戏还没有普遍的时代.所以我可以和我的小伙伴们一起玩耍,同时发明属于我们的游戏. 我们十分会玩:用树枝做成'???'.我们可以用树枝做出任何东西,除'回