麦吉尔大学本科math&cs专业就读体验
404510
Math & CS joint major 的数学和计算机课程各占major学分的一半,基本上涵盖了数学和计算机的所有基础课,但是对每一科可能都不是很深入。如果是向往金融工程,大数据方向发展比较推荐。由于McGill的专业选择可以在毕业前自由更改,最近几年学习cs major/cs课程的人成倍增加,导致有的课程会有300,400人(尤其是AI/Machine Learning相关的课程),waitlist会比较紧张,不过一般在add/drop 结束前都能选上向上的课。以下是我选过的cs/math一些课程的体验:
COMP202: 基础课,我当时上的时候讲的是Java, 讲的非常细,考试考的也比较基础,普遍分数都不低,不过据说现在改教Python了。
COMP206: System方向的基础课,主要讲述Linux最基本的一些command和bash,C,讲的东西有点杂,感觉workload要大于COMP202.
COMP250: 基础算法课,应该算是对找工作比较有用的课,内容比较充实,期末复习的时候最好多留点时间。
COMP251:COMP250的进阶,主要也讲的算法,我当时上的时候是Prof. Devroye上,每节课内容特别多,板书可能不太容易看懂,不过会提供教案。有两次期中和一次期末,考试都比较难,但是每次期中为保证平均分达到75分都会curve30多分,最后总成绩都不低。这节课缺点是基本上都写的是伪代码,所以学完后发现真的在ide上写还是很困难。建议在上课的同时自己在ide进行练习以应对未来的找工作面试。COMP360: 也是算法课,251的进阶,不过topic没有251那么多,讲的比较细。作业很难,每个作业基本上需要花10小时以上时间,midterm和final出题比较fair。 这门课比较费脑子,尤其是做作业,最好早点开始。当时上这门课的老师讲的很好,对这门课总体好评。
COMP273: COMP206的进阶课,主要讲assemble等语言。在前半节课会画很多繁琐的电路图。我这节课是跟着Joseph上的,老师人很好,但是他的作业和考试的题目描述有时会很模糊,导致分数不是很理想。如果对题目有不同理解或者有不同解题思路,可以在oh时候去找他,如果他觉得你的思路和理解有道理,会把这道题的扣分给加回来。作业遇到不理解的或者不懂得可以经常去oh去找他问,他会给出很多hint。
Comp310: 算是所有必修中比较难的cs课程,主要讲os. 内容很多,因为疫情,我当时上的是网课,每周都有quiz。每个作业需要花的时间也很多,尽量早点开始。
COMP424: AI课程。总体比较理论,内容丰富,还比较有意思。有些内容会和551的前半部分略微有点重叠。大作业有3,4个的样子,除了第一个大作业最后两题有写码,其余的都是理解ai算法答题。学期最后会有个有意思的project,评分很大一部分比重来自project设计出来的agent互相比拼的排名。总体来说,除了最后一个project要花多点时间,每个大作业前花一些时间,平常事情不是很多,workload不是很大。
COMP551: Applied Machine Learning. 非常火爆,每学期上的人数都很多。作业主要是组队完成几个project,只有期中考试,没有期末考试。课程本身内容有点繁杂,machine learning的各个领域都介绍了一部分,但不是很深。上课会讲很多理论证明,但是可能因为教授当时刚来学校不久,没怎么讲过这门课程,证明讲解的不是很透彻,个人对这门课评价比较一般。
Math 140/141: 基础微积分,考试基本上出的都是书上题目,基本上把书上的题做了,考试满分就不难。
Math 222: 微积分进阶,我上这门课的时候平均分是C+, 这门课比较需要多做做题。
Math 235: Algebra I,每周都有作业,workload比较大,每周去tutorial会讲解一些和作业类似的题,tutorial很重要。期中期末的考试比较fair。
Math 236: Algebra II,其实就是linear algebra的内容。作业很难,workload不清,考试平均分较低(期中平均分好像只有50多)考试复习推荐把上课所讲的内容的所有笔记能复写出来,并且弄懂每道作业题。因为涉及到的定理很多,期末复习会很占时间。workload总体不轻。
Math 242: Analysis基础课,每周都有作业,不过一般就1,2道题。tutorial对于作业和考试都很重要。有两次期中考试和一次期末考试,考试比较fair,不过最好在考试前把tutorial上的题,作业上的题和笔记上的例题都弄懂,各个证明都能复写出来。 workload总体不轻。我当时是和235在同一学期上的,感觉那学期很忙,不推荐和235一起上。
Math 340: 挺有意思的一节课,涉及到很多小学奥数排列组合的的内容,也会涉及到和计算机相关的graph的内容。考试比较fair,把上课笔记和作业弄懂就行。
Math 317: Numerical Analysis. 所有作业几乎都会有几道题编程,不过编程的内容都不难。上课讲的教案比较有用,有时也会提供相关代码,可以作为作业的参考。总体而言,workload不重。
Math 318: Logic. 讲了几种不同的逻辑系统,有的课程内容和COMP424会有些重叠。作业不简单,不过考试基本上都是作业的变种,所以在发下作业答案后如果有不懂的地方可以常去oh把每道题弄懂。因为每种逻辑有很多的定理,期中期末复习起来会花一定的时间。
COMP202: 基础课,我当时上的时候讲的是Java, 讲的非常细,考试考的也比较基础,普遍分数都不低,不过据说现在改教Python了。
COMP206: System方向的基础课,主要讲述Linux最基本的一些command和bash,C,讲的东西有点杂,感觉workload要大于COMP202.
COMP250: 基础算法课,应该算是对找工作比较有用的课,内容比较充实,期末复习的时候最好多留点时间。
COMP251:COMP250的进阶,主要也讲的算法,我当时上的时候是Prof. Devroye上,每节课内容特别多,板书可能不太容易看懂,不过会提供教案。有两次期中和一次期末,考试都比较难,但是每次期中为保证平均分达到75分都会curve30多分,最后总成绩都不低。这节课缺点是基本上都写的是伪代码,所以学完后发现真的在ide上写还是很困难。建议在上课的同时自己在ide进行练习以应对未来的找工作面试。COMP360: 也是算法课,251的进阶,不过topic没有251那么多,讲的比较细。作业很难,每个作业基本上需要花10小时以上时间,midterm和final出题比较fair。 这门课比较费脑子,尤其是做作业,最好早点开始。当时上这门课的老师讲的很好,对这门课总体好评。
COMP273: COMP206的进阶课,主要讲assemble等语言。在前半节课会画很多繁琐的电路图。我这节课是跟着Joseph上的,老师人很好,但是他的作业和考试的题目描述有时会很模糊,导致分数不是很理想。如果对题目有不同理解或者有不同解题思路,可以在oh时候去找他,如果他觉得你的思路和理解有道理,会把这道题的扣分给加回来。作业遇到不理解的或者不懂得可以经常去oh去找他问,他会给出很多hint。
Comp310: 算是所有必修中比较难的cs课程,主要讲os. 内容很多,因为疫情,我当时上的是网课,每周都有quiz。每个作业需要花的时间也很多,尽量早点开始。
COMP424: AI课程。总体比较理论,内容丰富,还比较有意思。有些内容会和551的前半部分略微有点重叠。大作业有3,4个的样子,除了第一个大作业最后两题有写码,其余的都是理解ai算法答题。学期最后会有个有意思的project,评分很大一部分比重来自project设计出来的agent互相比拼的排名。总体来说,除了最后一个project要花多点时间,每个大作业前花一些时间,平常事情不是很多,workload不是很大。
COMP551: Applied Machine Learning. 非常火爆,每学期上的人数都很多。作业主要是组队完成几个project,只有期中考试,没有期末考试。课程本身内容有点繁杂,machine learning的各个领域都介绍了一部分,但不是很深。上课会讲很多理论证明,但是可能因为教授当时刚来学校不久,没怎么讲过这门课程,证明讲解的不是很透彻,个人对这门课评价比较一般。
Math 140/141: 基础微积分,考试基本上出的都是书上题目,基本上把书上的题做了,考试满分就不难。
Math 222: 微积分进阶,我上这门课的时候平均分是C+, 这门课比较需要多做做题。
Math 235: Algebra I,每周都有作业,workload比较大,每周去tutorial会讲解一些和作业类似的题,tutorial很重要。期中期末的考试比较fair。
Math 236: Algebra II,其实就是linear algebra的内容。作业很难,workload不清,考试平均分较低(期中平均分好像只有50多)考试复习推荐把上课所讲的内容的所有笔记能复写出来,并且弄懂每道作业题。因为涉及到的定理很多,期末复习会很占时间。workload总体不轻。
Math 242: Analysis基础课,每周都有作业,不过一般就1,2道题。tutorial对于作业和考试都很重要。有两次期中考试和一次期末考试,考试比较fair,不过最好在考试前把tutorial上的题,作业上的题和笔记上的例题都弄懂,各个证明都能复写出来。 workload总体不轻。我当时是和235在同一学期上的,感觉那学期很忙,不推荐和235一起上。
Math 340: 挺有意思的一节课,涉及到很多小学奥数排列组合的的内容,也会涉及到和计算机相关的graph的内容。考试比较fair,把上课笔记和作业弄懂就行。
Math 317: Numerical Analysis. 所有作业几乎都会有几道题编程,不过编程的内容都不难。上课讲的教案比较有用,有时也会提供相关代码,可以作为作业的参考。总体而言,workload不重。
Math 318: Logic. 讲了几种不同的逻辑系统,有的课程内容和COMP424会有些重叠。作业不简单,不过考试基本上都是作业的变种,所以在发下作业答案后如果有不懂的地方可以常去oh把每道题弄懂。因为每种逻辑有很多的定理,期中期末复习起来会花一定的时间。
10条回复