COMP9021 是 MIT 学子遇到的第一道‘智力关卡’。难点不在于 Python 语法(那只需一周就能上手),而在于‘解题逻辑’。当你面对 Assignment 里要求识别图片中特定形状的拓扑关系时,你会发现自己空有一身语法,却不知从何动笔。压力主要来自于 Eric Martin 的作业,题目描述极长且充满数学美感,如果你在第 9 周还没跑通回溯算法,你可能会在电脑前坐一整夜。及格极其容易,但拿 HD 需要你对‘优雅代码’有近乎病态的追求。挂科风险显著存在于对‘机考 Hurdle(不及格即挂科)’的压力崩溃上。
高分秘籍:‘得递归与回溯者得 Distinction,得代码简洁度者得 HD’。机考中,遇到迷宫或路径搜索题是必考的 20 分大题。一定要练到能‘盲写’DFS 模板。重点攻克‘列表推导式与生成器的组合应用’,那是 Eric 最欣赏的 Pythonic 风格。备考时,教材《Principles of Programming》及其配套的‘Sample Questions’是唯一的圣经,每一个小练习都要做三遍。对于项目,HD 的关键在于‘通用性’——你的代码是否能处理各种极端畸形的文件输入?重视 Tutorial 里的每一道逻辑谜题。
神级资源:课程官网提供的所有往届真题。如果递归理解不了,强烈推荐去 B 站搜‘麻省理工 计算机科学导论 6.001’。最重要的建议:養成‘先画流程图,再写代码’的习惯。利用好 Python 的 `pdb` 调试器来追踪递归每一层的变量变化。学会使用 `Matplotlib` 将你的算法结果可视化(Eric 很看重这个)。加入 UNSW 的 MIT 转专业互助群。
项目避坑:千万不要在提交前最后一小时才跑大型数据集!有些回溯算法如果没有做好‘剪枝’,在学校的评测机上会因为运行超时被直接判定为 0 分。Assignment 写作中,严禁有冗余的 `print` 语句,保持输出格式与 Spec 完全一致。此外,注意 Final 机考有 Hurdle,如果你现场写不出一个基本的 `while` 循环,你会直接 Fail。考试时,带好耳机屏蔽干扰,先做最简单的文件读取题。注意:分清‘浅拷贝’与‘深拷贝’在处理嵌套列表时的致命差异。
学长建议:这门课是为你进入计算机世界‘换脑’。学完后,你眼中的问题将不再是问题,而是一个个可以被递归和搜索拆解的状态空间。建议找一个同样追求‘逻辑纯粹性’的战友互喂题。拿 HD 的关键:在作业中展示出你对‘边缘情况(Edge Cases)’的极致处理。坚持住,通关 9021,你就真正跨过了从外行到码农的那道认知红线。这张成绩单是申请后续高阶课(如算法)最硬的底气。记住:好的程序员,是数学家与工匠的结合。
