AP新课来了

AP CSA 递归考什么?考法、追踪方法与练习路径

更新于 2026-08-15 · AP新课来了教研组

先说结论

  • ·好消息:CSA 对递归的要求是「读懂、会追踪」,几乎只出现在选择题里——给一个递归方法,问某个调用的返回值或输出。
  • ·不考:自己从零设计递归算法、复杂的分治与回溯。FRQ 不要求必须用递归作答。
  • ·掌握递归的唯一路径是手工追踪调用过程:把每层调用当作一张便签,压栈、返回、逐层回填。

考试边界:别把递归学过头

官方框架里递归是独立单元,learning objectives 写得很克制:确定递归调用的结果、追踪递归的执行过程。翻译过来:你需要读懂别人写的递归,不需要自己发明递归。

所以不要用竞赛的标准折磨自己——汉诺塔、八皇后这些经典题超出考试要求。把有限的时间花在「快速准确地追踪」上,性价比最高。

便签追踪法

以 mystery(4) 为例(方法体:若 n<=1 返回 1,否则返回 n * mystery(n-2))。追踪的标准动作是:

  • 写下 mystery(4),它需要 4 * mystery(2),先挂起;
  • 写下 mystery(2),它需要 2 * mystery(0),再挂起;
  • mystery(0) 命中基线条件返回 1——开始回填;
  • mystery(2) = 2 * 1 = 2;mystery(4) = 4 * 2 = 8。完成。

高频陷阱清单

选择题里递归的坑集中在四处:

  • 基线条件的边界:n<=1 和 n==1 的差别,输入为 0 或负数时行为不同;
  • 输出型递归的顺序:打印语句在递归调用之前还是之后,决定输出正序还是倒序——这是最经典的考点;
  • 多次递归调用:方法体里出现两次自调用(如斐波那契形态)时,调用次数呈指数增长,问「调用了几次」要画调用树;
  • 字符串递归:对子串的递归处理,注意 substring 的下标边界。

四周练习路径

第 1 周:数值递归追踪(阶乘、幂、累加形态),每天 3 题手工追踪;第 2 周:输出型递归,专练打印顺序;第 3 周:字符串与多重调用形态;第 4 周:混合限时训练,20 分钟 8 题,正确率目标 85% 以上。

AP新课来了 的递归单元按这个梯度组织练习,错题自动进入修补路径,隔几天用同型新题复测。

Free Assessment

孩子适不适合,15 分钟测一测

不考编程知识——测逻辑、数学、英语读题、流程推演、细节专注五项底层能力, 做完当场出分维度报告。

免费测评

相关课程

AP CSA · Java 编程

从第一行 Java 代码到 FRQ 编程大题的 36 周完整路径,覆盖全部 53 个 AP Topics,浏览器里直接写、跑、测。

常见问题

FRQ 里用循环代替递归会扣分吗?

不会。FRQ 评分看功能正确性,除非题目明确要求(极少见),循环和递归都是合法实现。考场上用你更稳的那种。

递归想不明白是不是智商问题?

不是,是方法问题。递归反直觉是普遍现象,解药是把「脑内模拟」外化成纸面追踪——用便签法追踪 20 道题后,绝大多数学生都会开窍。

递归在考卷里占多少分?

选择题里通常 2–4 题直接考递归。量不大,但因为对错两极分化,是 4 分与 5 分考生的典型分界题。