UniMate AI

COMP9021

编程原理

6 学分难度

课程定位 COMP9021 是 UNSW 计算机硕士专业(MIT)最重要的‘编程洗礼课’。它解决了跨专业学生最本质的转型难题:如何从‘只会写代码’进化到‘具备算法思维’?如何利用 Python 解决具有数学美感的复杂谜题?它是通往后续数据结构、人工智能及软件工程课程的唯一逻辑门槛。它将 Python 语法、基础算法与大规模逻辑谜题深度整合,是培养‘具备黑客解题直觉的开发者’的必修课。 技术栈与学习内容 课程以 Python 为唯一教学语言。学习内容涵盖:Python 高级特性(生成器、装饰器、列表推导式)、复杂文件处理、基础数据结构(列表、栈、队列、树)的手动实现、以及最重要的‘算法解题技巧’。课程重点研究:回溯搜索 (Backtracking)、递归分析、图论搜索初步、以及如何将非结构化谜题(如迷宫求解、数独破译)形式化为计算机程序。课程强调‘代码的简洁性、效率与逻辑的极致严密’。 课程结构 10 周理论高频产出与极具挑战的作业体系结合。评估体系以‘逻辑大题’闻名:包含每周的编程挑战 Lab、两个要求极高逻辑深度的程序设计项目(Major Assignment,通常涉及极其复杂的模式识别或游戏模拟)、以及一场限时机考(在中考和期末进行)。及格意味着你懂 Python,拿 HD 意味着你具备了挑战 LeetCode Hard 题目的潜力。 适合人群 计算机硕士转专业新生、或打算夯实编程底层的理工科生。必须具备基础的数学逻辑。如果你想在面试中展现出‘不仅会调包,还能手写复杂逻辑’的深度、或者渴望在未来的技术笔试中游刃有余,这门课是你的神功。建议每周投入 25 小时以上进行代码打磨。

Course decision

选课先看

先看考核重心、截止节奏和入门要求,再决定这门课是否适合你的学期安排。

考核总权重

100%

3 项考核

最高单项

50%

Final Lab Examination

期末考试

以官方 outline 为准

Hurdle

1 项

需要单独满足

Deadline map

考核时间线

按截止周排列作业节点;持续考核会保留在下方完整考核结构中。

Week 6

Mid-term Lab Exam

20%

现场机考,要求在 2 小时内独立解决 3-4 道逐渐递增难度的编程逻辑题。

Week 10

Programming Assignments

30%

涵盖两个极高难度的编程项目,要求解决非结构化的逻辑谜题并提交完美运行的代码。

Week 11

Final Lab Examination

50%

限时 3 小时,综合考察递归、搜索、文件处理及算法设计能力的现场机考。

Syllabus

每周大纲

默认只展示每周独有的知识重点;节奏、考核、Tutorial 和避坑信息按需展开。

  1. 1

    Python 基础与逻辑入门

    控制流,函数定义,基本数据类型,解决简单的组合谜题。

  2. 2

    数据结构进阶:列表与字典

    内存模型分析,列表推导式的高级应用,字典的高效键值映射逻辑。

  3. 3

    文件处理与正则表达式 (Regex)

    大规模文本读取,模式匹配基础,利用 Python 进行数据提取自动化。

  4. 4

    递归与分治思想

    汉诺塔问题,递归调用的堆栈分析,识别递归的边界与收敛条件。

  5. 5

    回溯搜索 (Backtracking) 实战

    八皇后问题,迷宫路径搜索,状态空间树的修剪与深度遍历。

  6. 6

    灵活性周 (Flex Week)

    复习递归逻辑,冲刺第一个复杂谜题 Assignment,练习调试器 pdb 的高级用法。

  7. 7

    面向对象编程 (OOP) 精要

    类与对象,封装、继承与多态,设计自定义的数据容器。

  8. 8

    图论基础算法

    邻接矩阵与邻接表,BFS 与 DFS 在网格图中的应用,连通分量判定。

  9. 9

    程序性能优化

    Big-O 复杂度分析,识别冗余计算,使用生成器优化内存开销。

  10. 10

    综合复习与机考模拟

    全学期逻辑大串讲,复杂机考真题演练;迎接最终挑战。

Assessment

考核结构

Programming Assignments

涵盖两个极高难度的编程项目,要求解决非结构化的逻辑谜题并提交完美运行的代码。

30%

Week 10

Mid-term Lab Exam

现场机考,要求在 2 小时内独立解决 3-4 道逐渐递增难度的编程逻辑题。

20%

Week 6

Final Lab ExaminationHurdle

限时 3 小时,综合考察递归、搜索、文件处理及算法设计能力的现场机考。

50%

Week 11

From Seniors

学长留下的

基础信息谁都查得到,真正值钱的是过来人的经验。

学姐说

比你早一年的学长留下的真实经验 —— ChatGPT 给不了。

这门课还没有学长经验,你可以是第一个 —— 注册后在课内分享。

往年考点 / 踩坑

这门课暂无往年考点记录。

毕业生去向(整体)

下面是匠人学院毕业生整体去过的公司分布(来自脱敏校友证言)。这是全平台的总体去向,不代表选这门课的人一定去这些公司。

统计自 317 份脱敏校友证言

Deloitte

6 位校友

岗位:Graduate Program · Graduate Consulting · Platform Engineer · Web developer · Platform engineer

Zerologix

4 位校友

岗位:Frontend Dev · junior frontend developer · Front-end Developer · Full Stack Developer

Servian

4 位校友

岗位:Full-stack Developer · Data Engineer · Consultant

关于这块数据,我们说实话

雇主墙来自脱敏毕业生证言(testimonials)的整体分布,无法关联到具体学员或其所选课程;仅作为毕业生去向的总体社会证明展示。

我们没有"某位学长选了这门课、后来进了哪家公司"这种可查询的个人去向档案 —— 校友证言是脱敏的,无法关联到具体的人或他选过的课。所以这里只给整体分布,不给个人路径,不编。