考核范围
Paper 4 考核 Syllabus Section 19-20(不含 low-level 和 declarative programming):
19 Computational Thinking and Problem-solving
19.1 Algorithms
| 编号 | 知识点 | 考核要求 |
|---|
| 19.1.1 | Linear search | 实现线性查找 |
| 19.1.2 | Binary search | 实现二分查找(迭代和递归) |
| 19.1.3 | Bubble sort | 实现冒泡排序 |
| 19.1.4 | Insertion sort | 实现插入排序(迭代和递归) |
| 19.1.5 | Stack ADT | 用数组实现栈,push/pop |
| 19.1.6 | Queue ADT | 用数组实现队列(线性+循环),enqueue/dequeue |
| 19.1.7 | Linked list ADT | 用数组实现链表,插入/删除/查找 |
| 19.1.8 | Binary tree ADT | 用数组/OOP 实现二叉树,插入/遍历 |
| 19.1.9 | Graph ADT | 特征描述,不需写代码 |
| 19.1.10 | Dictionary ADT | 特征描述 |
| 19.1.11 | Algorithm complexity | Big O 表示时间和空间复杂度 |
19.2 Recursion
| 编号 | 知识点 | 考核要求 |
|---|
| 19.2.1 | Recursion | 写递归算法、追踪递归、迭代转递归 |
| 19.2.2 | Stacks and unwinding | 编译器的递归实现原理 |
20 Further Programming
20.1 Programming Paradigms
| 编号 | 知识点 | 考核要求 |
|---|
| 20.1.1 | Imperative/Procedural | 变量、控制结构、过程/函数 |
| 20.1.2 | OOP | 类、对象、封装、继承、多态、getter/setter |
20.2 File Processing and Exception Handling
| 编号 | 知识点 | 考核要求 |
|---|
| 20.2.1 | File operations | 打开、关闭、读写、append |
| 20.2.2 | Exception handling | try/except |
| 20.2.3 | File types | serial、sequential、random |
考试形式
| 项目 | 内容 |
|---|
| 时长 | 2h30min |
| 满分 | 75 |
| 题量 | 3 道大题 |
| 编程语言 | Python(console mode) |
| 计算器 | 不允许 |
AO 权重
| AO | 描述 | Paper 4 占比 |
|---|
| AO3 | Design, program and evaluate | 100% |
题型与知识点映射
| 题型 | 对应 Syllabus |
|---|
| 数组/2D 数组 | 10.1, 10.2 |
| 排序 | 19.1.3, 19.1.4 |
| 查找 | 19.1.1, 19.1.2 |
| 队列(线性+循环) | 19.1.6 |
| 栈 + 栈计算 | 19.1.5 |
| 链表 | 19.1.7 |
| 二叉树 + 遍历 | 19.1.8, 19.2.1 |
| 哈希表 | 13.2, 19.1.10 |
| 递归 | 19.2.1 |
| OOP + 继承 | 20.1.2 |
| 文件处理 | 20.2 |
| 字符串处理 | 11.1 |
| 数据验证 | 9.2 |