知乎热议:微积分、线代应该成为计算机专业学习的重心吗?
【导读】数学的重要性不言而喻,那么对于从事IT行业的人来说,像高数、线代这种基础数学课程,应该被视为重中之重吗?
作为一名计算机专业的学生,你觉得求学期间哪门课程最重要?
你又将哪门课程作为学习的重中之重呢?
总有人推荐计算机学生把重点放在高数和线代?
你觉得呢?
考研党的心声:该学还得学
众所周知,计算机是一个非常宽泛的学科,学生毕业后所从事的领域也五花八门,例如有操作系统,编译,数据库,逆向工程,信息安全,甚至还有软件工程等等。
那么,这些领域都需要,或者说很需要高数与线代吗?
想必本专业的学生,此时脑中蹦出了四个大字:离、散、数、学。
包括非ML的传统算法在内,CS的大部分方向依赖的是数理逻辑和图论之类的数学分支,具体到大学本科课程对应的也是离散数学,而不是高数。
但是,作为计算机本科生,这是大家放弃高数和线代的理由吗?
或许一个更为庞大的群体:考研党,会给出不一样的答案。
在刚刚过去的2020年,计算机硕士继续呈现「爆炸」增长。以如今计算机的缺口,本科毕业生根本无法填充,再加上计算机的就业路比较宽,半路出家考研的也大有人在。所以,作为考研必考科目的高数与线代,当然也是非学不可。
除了应试,我们还要关注作为数学基础,它们有着培养数学思维的作用。
数学思维对计算机行业,或者说一切理工科都有着无与伦比的重要性。
如今各种软件,都与数学有必然的联系,例如在游戏、图形软件开发中引用了线性代数中大量的坐标变换,矩阵运算。而对开发游戏引擎,人工智能算法来说,数学更是根基,不但开发引擎需要数学知识,开发游戏逻辑也需要,所需知识就基本覆盖了大学里《高等数学》、《线性代数》、《概率与数理统计》等课程。
岗位上用到高数多少?
但也有人认为,聚焦数学固然重要,但不要过分夸大高数与线代的重要性。
因为像人工智能岗位、游戏引擎开发岗位等等,还并不能代表程序员群体的全部。
还是回到应用更为广泛的离散数学身上,计算机本身的存储结构是离散的。
所以很多时候,没必要过分强调「基础论」,因为从计算机系统的角度讲,大都依赖的是离散结构的数学,而非微分方程。
不是学习C/C++方向和考研,没有太大的必要把学习精力重点放在高数和线代上面。你更应该学好计算机网络、操作系统、数据库、数据结构与算法等等计算机科学相关内容,和编程语言以及用编程语言开发出具体的项目上。
算术 几何 代数 结石 线性代数 傅立叶变换 常微分方程 偏微分方程等等
逻辑 演算法 基本定理 数学证明和模型 离散数学 计算理论 信息论 组合学 集合论 图论 抽象代数等等
转自:新智元
编辑:小匀
链接:https://mp.weixin.qq.com/s/ZFYToC-N0EhPCOwPN5Xpeg
往期精彩: