美国学生都学什么课?
作为在MIT读了3个quarter, UCSD 读了2个quarter 的我 来简单说说我们读了啥(我选了物理系所以课程以物理居多),以及这些课程的难度和含金量如何 先上张图,这是今年MIT春季的课表,绿色部分是我选的课,因为都是大课,每门都有上千人修读,所以我选择了用GRE的数学分数免修这两门,而用两门微积分的成绩去换取另外的两门课,最终达到了四门课的目的,至于为什么没有选择数学系或者物理系的选修课,原因也很简单,这些必修的课程为了照顾所有同学(包括没有选到心仪课程的同学)都会把难度降得很低,几乎不需要刷太多题就可以取得很好的成绩,因此这种“水课”意义不大,不如我自行搭配出来的这四门更有意义一些。
首先来说最难的一门课,也是大多数人上学期间最头疼的事情——写代码。我本人是很喜欢编程的,所以这门数值分析课对我来说难度是适中的,很多没有学过编程或是编程基础弱的同学就会很痛苦了,因为要掌握复变函数,矩阵论,特殊函数等一大堆知识之后才能开始写作业,因此代码写得对不对会直接影响到最后能不能拿到 A (这门课满分是没有 A+ 的)。虽然这门课看起来是跟数学分析和高等代数很像的名称,但是内容涉及很多计算机的知识,而且课后作业大多是关于数值分析或者是计算机方面的,纯数学的内容比较少。
这一门是跟 CS 专业的同学一起上的课,所以代码的量很大,对于数学功底的要求也高。 如果没有学好这门数学课,那么接下来学习机器学习,数据挖掘等方面的课就会很吃力。所以这门课的重要性不言而喻。 这是另一门跟 CS 专业同学一起上的课,主要的内容就是教如何用python写代码,由于CS专业本身就是用python做入门语言,所以这门课程对于非计算机专业的人来讲确实很难,因为不仅要学完所有数学课程,还要追上别人已经学习了 python,java 甚至c 语言的进度。
这是这门课的作业,需要写一个可以运行的小程序,如果没学懂的话,这个程序是不可能通过的,所以作业的难度取决于你的编程能力能否让你完成这个程序。 同样是跟cs同学一起上的课,这门课主要介绍一些常用的数据结构,算法,以及python的基本用法。如果你之前没有学过python,并且想要今后从事计算机相关的工作,那这门学费可不便宜且耗时很长(一共三个 quarter)的课就很值得选了。
当然,如果你是想学习算法,python也有很好的学习资源,比如斯坦福大学的 CS106 系列,不过需要花些功夫去寻找好讲解的视频。