您当前的位置: 首页 > 软件系统 > > 数学差的人不配学计算机?布朗大学教授告诉你一

数学差的人不配学计算机?布朗大学教授告诉你一

但申请者们不免有这样一些问题:

高中生——我数学不好,可以选择计算机科学专业吗?

本科生——我非计算机专业,可以跨专业申请 CS 吗?

如果有相同困扰的小伙伴,看过来(举手)!

这里所说的计算机专业并不仅仅指代计算机工程,其中信息系统、软件工程、信息安全、编程、计算机图形学,以及管理信息系统等方向都被包含在内。

但无论是学哪个方向的,计算机专业确实是需要具备数学能力的。

如果你想学计算机图形学,那你就需要掌握线性代数、计算几何;

如果你想搞音频,就需要知道数字信号处理那一套等等。

但这些都是特定领域内最基础的知识了,与其他理工科专业对数学的要求是一样一样的,并没有因为它挂上了计算机的头衔就要更严格一些(你觉得难可能是因为计算机申请人数太多,“卷”出新高度了)

还有编程,对于外行人来说,要做一个程序员看似很复杂,很困难,但事实上编程本身对数学的要求并不高。因为编程的本质不是用高深的数学知识去处理事情,也不是背代码,而是在写很多很多基础代码的前提下,勤于练习,最后按照自己的理解去钻研。

像是编程、JAVA程序设计等“技术类”方向,计算机用的数学知识不是很多,会用到一些简单的函数问题,大多数是高中数学。像是算法设计与分析等研究类、纯理论类的方向,则会对数学要求比较高。

(当然这只是对想要入门的新手来说,当你进入了这个领域并把它当作饭碗的时候,你懂的越多,上升空间越大,所以 这并不是“数学无用论”

总而言之,数学虽然重要,但不是学习某个专业决定性因素。

对于本科生是否能跨专业申请计算机科学的问题,Shriram Krishnamurthi——一位在布朗大学从业超过 28 年的计算机科学教授给出了最专业的答案。

“很多人忽视了一个问题,计算机科学需要使用数学的原因,不在于它真的需要数学领域的某个公式、某个理论,而是需要你的 数学思维能力:统计、概率、最重要的是数学逻辑。

在这个领域,无论是否使用“高级数学”,每个优秀的从业者都在从事结构化、逻辑化的思考,甚至当他们编写数据库和其他程序的时候,还被要求写出逻辑化的语句。这就印证了这个领域需要的不是一个数学天才,而是一个 逻辑学者。”

布朗大学的计算机科学硕士入学要求,没有标明只接受计算机领域的本科生,而是与计算机科学相关的学科都可以。

当然,如果你原本来自艺术学、语言文学之类的,确实跨专业申请很困难,毕竟研究生课程可没有时间能像本科似的给你打基础。

所以跨专业的前提是你有非常强的软实力背景,而且还需要至少修过一些基础课程,如 C 语言、JAVA 等,至少说明你能跟的上课,不是小白。

(哐哐哐敲黑板,想跨专业申请的注意提前规划相关先修课! 别大三都结束了啥先修课都没有,就脑洞大开想跨专业,因为没有行动力的“梦想”“爱好”只是说说而已,不值钱!)