∫π每天一道数学题
← 返回数列
数列 · 第 9 讲 · 2026-08-30 · 约 11 分钟

递推数列——从一项推出下一项的艺术

递推是数列的灵魂。等差等比只是最简单的递推,真正有意思的数列都藏在递推关系里。累加法、累乘法、构造法——这三样兵器,能搞定高中大部分递推问题。

递推才是数列的本质

前面我们学了等差数列和等比数列,它们都有漂亮的通项公式。

但你有没有想过:人类最早认识数列的时候,是先有通项公式,还是先有递推关系?

答案是先有递推。

你看一个细胞分裂成两个,两个分裂成四个——你第一反应肯定是"后一项是前一项的两倍",而不是"第 n 项是 2 的 n 次方"。

递推更贴近事物的生长过程:知道了前面的,就能推出后面的。它描述的是变化的规则,而不是最终的结果。

通项公式虽然好用,但它是"结果"——是我们从递推关系里"解"出来的。

这一讲,我们就来学高中阶段几种最常见的递推类型,以及它们对应的求通项方法。

示意图

递推数列的三种类型

从简单到复杂:一阶线性(累加/累乘)→ 一阶常系数(构造法)→ 二阶线性(特征根)

类型一:aₙ = aₙ₋₁ + f(n) —— 累加法

这是最简单的递推关系之一:后一项等于前一项加上一个关于 n 的函数。

an=an−1+f(n)(n≥2)a_n = a_{n-1} + f(n) \quad (n \ge 2)

怎么求通项?思路很朴素:既然每一项都比前一项多了 f(n),那把所有的"增量"加起来不就行了?

把递推式从 n=2n=2 写到 nn:

a2−a1=f(2)a3−a2=f(3)a4−a3=f(4)…an−an−1=f(n)\begin{aligned} a_2 - a_1 &= f(2) \\ a_3 - a_2 &= f(3) \\ a_4 - a_3 &= f(4) \\ &\ldots \\ a_n - a_{n-1} &= f(n) \end{aligned}

把这 n−1n-1 个式子左边加左边,右边加右边,中间的 a2,a3,…,an−1a_2, a_3, \ldots, a_{n-1} 全部抵消了:

an−a1=f(2)+f(3)+…+f(n)=∑k=2nf(k)a_n - a_1 = f(2) + f(3) + \ldots + f(n) = \sum_{k=2}^{n} f(k)

所以:

an=a1+∑k=2nf(k)a_n = a_1 + \sum_{k=2}^{n} f(k)

这就是累加法(也叫叠加法)。

等差数列 an=an−1+da_n = a_{n-1} + d 其实是累加法的特例——当 f(n)=df(n) = d(常数)时,累加的结果就是 (n−1)d(n-1)d,和我们之前学的通项公式完全一致。

累加法的关键:递推式能写成 "an−an−1=a_n - a_{n-1} = 只含 n 的式子"。只要能写成这个形式,就可以累加。

类型二:aₙ = aₙ₋₁ · f(n) —— 累乘法

和累加法对应的是累乘法。如果递推关系是乘法的:

an=an−1⋅f(n)(n≥2)a_n = a_{n-1} \cdot f(n) \quad (n \ge 2)

那我们就把所有的"倍率"乘起来。

把递推式从 n=2n=2 写到 nn:

a2a1=f(2)a3a2=f(3)a4a3=f(4)…anan−1=f(n)\begin{aligned} \frac{a_2}{a_1} &= f(2) \\ \frac{a_3}{a_2} &= f(3) \\ \frac{a_4}{a_3} &= f(4) \\ &\ldots \\ \frac{a_n}{a_{n-1}} &= f(n) \end{aligned}

左边乘左边,右边乘右边,中间全部约掉:

ana1=f(2)⋅f(3)⋅…⋅f(n)=∏k=2nf(k)\frac{a_n}{a_1} = f(2) \cdot f(3) \cdot \ldots \cdot f(n) = \prod_{k=2}^{n} f(k)

所以:

an=a1⋅∏k=2nf(k)a_n = a_1 \cdot \prod_{k=2}^{n} f(k)

这就是累乘法(也叫叠乘法)。

等比数列 an=an−1⋅qa_n = a_{n-1} \cdot q 是累乘法的特例——当 f(n)=qf(n) = q(常数)时,累乘的结果就是 qn−1q^{n-1}。

累加和累乘,一个对应等差、一个对应等比,结构完全对称——又是加法变乘法的翻译。

类型三:aₙ = paₙ₋₁ + q —— 构造法

这是高中最常考的递推类型,也是很多同学的噩梦。

an=pan−1+q(n≥2, p≠1, p≠0)a_n = p a_{n-1} + q \quad (n \ge 2,\ p \neq 1,\ p \neq 0)

左边是 ana_n,右边是 an−1a_{n-1} 乘以一个常数,再加一个常数。既不是等差(因为乘了 p),也不是等比(因为加了 q)。

怎么办?我们想办法把它变成等比数列。

思路是这样的:假设我们在两边都减去一个常数 λ\lambda,让它变成等比的形式:

an−λ=p(an−1−λ)a_n - \lambda = p(a_{n-1} - \lambda)

展开右边:

an−λ=pan−1−pλa_n - \lambda = p a_{n-1} - p \lambda

整理一下:

an=pan−1+λ−pλa_n = p a_{n-1} + \lambda - p \lambda

和原式 an=pan−1+qa_n = p a_{n-1} + q 对比,常数项应该相等:

λ−pλ=q\lambda - p \lambda = q λ(1−p)=q\lambda(1 - p) = q λ=q1−p\lambda = \frac{q}{1 - p}

找到了!只要我们令 bn=an−q1−pb_n = a_n - \dfrac{q}{1 - p},那么新数列 {bn}\{b_n\} 就是一个公比为 pp 的等比数列。

求出了 bnb_n 的通项,ana_n 自然就出来了:

an=bn+q1−pa_n = b_n + \frac{q}{1 - p}

这个方法叫做构造法,也叫待定系数法——我们先假设有这么一个常数 λ\lambda,然后通过对比系数把它求出来。

构造法的核心思想:把不熟悉的递推关系,通过巧妙的变形,变成熟悉的等比数列。 这是数学里非常通用的一种思路——化归:把未知问题转化为已知问题。

类型四:aₙ = paₙ₋₁ + f(n) —— 更一般的构造

如果右边加的不是常数 qq,而是一个关于 nn 的函数 f(n)f(n),怎么办?

an=pan−1+f(n)a_n = p a_{n-1} + f(n)

思路还是一样的:想办法构造成等比数列。但这次构造的不是"减一个常数",而是"减一个关于 n 的函数"。

具体怎么构造,要看 f(n)f(n) 是什么形式:

  • 如果 f(n)f(n) 是一次函数(比如 f(n)=an+bf(n) = an + b),就构造 an−(An+B)=p[an−1−(A(n−1)+B)]a_n - (An + B) = p[a_{n-1} - (A(n-1) + B)]
  • 如果 f(n)f(n) 是指数函数(比如 f(n)=c⋅rnf(n) = c \cdot r^n),就构造 an−A⋅rn=p(an−1−A⋅rn−1)a_n - A \cdot r^n = p(a_{n-1} - A \cdot r^{n-1})
  • 如果 f(n)f(n) 是二次函数,就构造二次函数的形式

总之,f(n)f(n) 长什么样,我们就构造一个同样"形状"的式子去减它,把右边剩下的部分变成纯等比。

这个方法高中阶段不要求掌握所有情况,但最基本的(常数、一次、指数)最好心里有数。

类型五:二阶线性递推(了解)

如果递推关系里出现了前两项:

an=pan−1+qan−2a_n = p a_{n-1} + q a_{n-2}

这就是二阶线性递推,需要两个初始条件(a1a_1 和 a2a_2)才能确定整个数列。

最经典的例子就是斐波那契数列:Fn=Fn−1+Fn−2F_n = F_{n-1} + F_{n-2},F1=1,F2=1F_1 = 1, F_2 = 1。

二阶递推的通项求法叫特征根法,在高考中一般不做硬性要求(属于竞赛内容),但知道有这么个方法没坏处。

思路是这样的:假设解的形式是 an=xna_n = x^n,代入递推式得到一个二次方程(特征方程),解出两个根 x1,x2x_1, x_2,那么通解就是 an=Ax1n+Bx2na_n = A x_1^n + B x_2^n,再用初始条件确定 A 和 B。

斐波那契数列那个看起来很复杂的通项公式,就是这么来的。

一个核心思想:化归

讲了这么多类型,你可能会觉得"递推的花样好多啊"。

但其实万变不离其宗,核心思想就一个词——化归。

什么是化归?就是把不熟悉的问题转化成熟悉的问题。

  • 累加法:把 an−an−1=f(n)a_n - a_{n-1} = f(n) 转化为求和问题
  • 累乘法:把 anan−1=f(n)\dfrac{a_n}{a_{n-1}} = f(n) 转化为求积问题
  • 构造法:把 an=pan−1+qa_n = pa_{n-1} + q 转化为等比数列
  • 特征根法:把二阶递推转化为解二次方程

每一种递推类型,本质上都是"通过某种变形,变成我们已经会的东西"。

所以学递推,不是死记"这种类型用那个公式",而是理解为什么要这么变形——因为这样变形之后,就能归到已有的知识体系里。

给个解题步骤

遇到递推数列求通项的题,可以按这个顺序来想:

第一步:看形式。 递推式是 ana_n 和 an−1a_{n-1} 的什么关系?加?乘?线性组合?

第二步:定方法。

  • 差为 n 的函数 → 累加法
  • 比为 n 的函数 → 累乘法
  • an=pan−1+qa_n = pa_{n-1} + q 型 → 构造法(待定系数)
  • an=pan−1+f(n)a_n = pa_{n-1} + f(n) 型 → 构造对应形式的新数列

第三步:验证。 求出来的通项,用 n=1,n=2n=1, n=2 代入验证一下,和已知条件对不对得上。

第三步特别重要。递推的计算步骤多,很容易算错。用前两项验证一下,能避免 80% 的低级错误。

在高中数学体系里的位置

递推数列是数列章节里最灵活、也最能出难题的部分。

高考中,递推通常以两种形式出现:

  1. 解答题第一问:给一个递推关系,让你求通项。这是送分题,只要掌握了基本方法(累加、累乘、构造),一般都能做出来。
  2. 压轴题的一部分:递推关系只是第一步,后面还要结合不等式放缩、数学归纳法、函数性质等等,难度就上去了。

但不管多难的题,递推求通项都是第一步。这一步走对了,后面才有戏;这一步走错了,后面全白搭。

所以递推数列这部分,基本功要扎实——不是说要会多少技巧,而是几种最基本的方法(累加、累乘、构造)要练到条件反射的程度,看到递推式就知道该往哪个方向走。

思考与拓展

  1. 已知 a1=1a_1 = 1,an=an−1+2n−1a_n = a_{n-1} + 2n - 1(n≥2n \ge 2),求 ana_n。(提示:累加,右边是等差数列求和)
  2. 已知 a1=1a_1 = 1,an=nn+1an−1a_n = \dfrac{n}{n+1} a_{n-1}(n≥2n \ge 2),求 ana_n。(提示:累乘,中间约分)
  3. 已知 a1=1a_1 = 1,an=2an−1+3a_n = 2a_{n-1} + 3(n≥2n \ge 2),用构造法求 ana_n。(先想想 λ\lambda 应该是多少)
  4. 你能不能用构造法的思路,给 an=3an−1+2na_n = 3a_{n-1} + 2^n 这个递推式设计一个构造方案?不用算到最后,说说构造的形式是什么样的就行。

高考母题

(2023·新课标II卷) 已知 {an}\left \{ a_{ n } \right \} 为等差数列, bn={b_{ n } =\left \{ \right. ,记 SnS_{ n } , TnT_{ n } 分别为数列 {an}\left \{ a_{ n } \right \} , {bn}\left \{ b_{ n } \right \} 的前n项和, S4=32S_{ 4 } =32 , T3=16T_{ 3 } =16 .
(1)求 {an}\left \{ a_{ n } \right \} 的通项公式;
(2)证明:当 n>5n>5 时, Tn>SnT_{ n } >S_{ n } .

展开详解

(1) an=2n+3a_{ n } =2n+3 ;
(2)证明:方法1:由(1)知, Sn=n(5+2n+3)2=n2+4nS_{ n } =\frac { n(5+2n+3) } { 2 }=n ^ { 2 } +4n , bn={,k∈N∗b_{ n } =\left \{ \right.,k∈N ^ { * } , 当 nn 为偶数时, bn−1+bn=2(n−1)−3+4n+6=6n+1b_{ n-1 } +b_{ n } =2(n-1)-3+4n+6=6n+1 , Tn=13+(6n+1)2⋅n2=32n2+72nT_{ n } =\frac { 13+(6n+1) } { 2 }⋅\frac { n } { 2 }=\frac { 3 } { 2 }n ^ { 2 } +\frac { 7 } { 2 }n , 当 n>5n>5 时, Tn−Sn=(32n2+72n)−(n2+4n)=12n(n−1)>0T_{ n } -S_{ n } =(\frac { 3 } { 2 }n ^ { 2 } +\frac { 7 } { 2 }n)-(n ^ { 2 } +4n)=\frac { 1 } { 2 }n(n-1)>0 ,因此 Tn>SnT_{ n } >S_{ n } , 当 nn 为奇数时, Tn=Tn+1−bn+1=32(n+1)2+72(n+1)−[4(n+1)+6]=32n2+52n−5T_{ n } =T_{ n+1 } -b_{ n+1 } =\frac { 3 } { 2 }(n+1) ^ { 2 } +\frac { 7 } { 2 }(n+1)-[4(n+1)+6]=\frac { 3 } { 2 }n ^ { 2 } +\frac { 5 } { 2 }n-5 , 当 n>5n>5 时, Tn−Sn=(32n2+52n−5)−(n2+4n)=12(n+2)(n−5)>0T_{ n } -S_{ n } =(\frac { 3 } { 2 }n ^ { 2 } +\frac { 5 } { 2 }n-5)-(n ^ { 2 } +4n)=\frac { 1 } { 2 }(n+2)(n-5)>0 ,因此 Tn>SnT_{ n } >S_{ n } , 所以当 n>5n>5 时, Tn>SnT_{ n } >S_{ n } . 方法2:由(1)知, Sn=n(5+2n+3)2=n2+4nS_{ n } =\frac { n(5+2n+3) } { 2 }=n ^ { 2 } +4n , bn={,k∈N∗b_{ n } =\left \{ \right.,k∈N ^ { * } , 当 nn 为偶数时, Tn=(b1+b3+⋯+bn−1)+(b2+b4+⋯+bn)=−1+2(n−1)−32⋅n2+14+4n+62⋅n2=32n2+72nT_{ n } =(b_{ 1 } +b_{ 3 } +\cdots +b_{ n-1 } )+(b_{ 2 } +b_{ 4 } +\cdots +b_{ n } )=\frac { -1+2(n-1)-3 } { 2 }⋅\frac { n } { 2 }+\frac { 14+4n+6 } { 2 }⋅\frac { n } { 2 }=\frac { 3 } { 2 }n ^ { 2 } +\frac { 7 } { 2 }n , 当 n>5n>5 时, Tn−Sn=(32n2+72n)−(n2+4n)=12n(n−1)>0T_{ n } -S_{ n } =(\frac { 3 } { 2 }n ^ { 2 } +\frac { 7 } { 2 }n)-(n ^ { 2 } +4n)=\frac { 1 } { 2 }n(n-1)>0 ,因此 Tn>SnT_{ n } >S_{ n } , 当 nn 为奇数时, Tn=(b1+b3+⋯+bn)+(b2+b4+⋯+bn−1)=−1+2n−32⋅n+12+14+4(n−1)+62⋅n−12T_{ n } =(b_{ 1 } +b_{ 3 } +\cdots +b_{ n } )+(b_{ 2 } +b_{ 4 } +\cdots +b_{ n-1 } )=\frac { -1+2n-3 } { 2 }⋅\frac { n+1 } { 2 }+\frac { 14+4(n-1)+6 } { 2 }⋅\frac { n-1 } { 2 } =32n2+52n−5=\frac { 3 } { 2 }n ^ { 2 } +\frac { 5 } { 2 }n-5 ,显然 T1=b1=−1T_{ 1 } =b_{ 1 } =-1 满足上式,因此当 nn 为奇数时, Tn=32n2+52n−5T_{ n } =\frac { 3 } { 2 }n ^ { 2 } +\frac { 5 } { 2 }n-5 , 当 n>5n>5 时, Tn−Sn=(32n2+52n−5)−(n2+4n)=12(n+2)(n−5)>0T_{ n } -S_{ n } =(\frac { 3 } { 2 }n ^ { 2 } +\frac { 5 } { 2 }n-5)-(n ^ { 2 } +4n)=\frac { 1 } { 2 }(n+2)(n-5)>0 ,因此 Tn>SnT_{ n } >S_{ n } , 所以当 n>5n>5 时, Tn>SnT_{ n } >S_{ n } . 【分析】
(1)设等差数列 {an}\left \{ a_{ n } \right \} 的公差为 dd ,用 a1,da_{ 1 } ,d 表示 SnS_{ n } 及 TnT_{ n } ,即可求解作答.
(2)方法1,利用(1)的结论求出 SnS_{ n } , bnb_{ n } ,再分奇偶结合分组求和法求出 TnT_{ n } ,并与 SnS_{ n } 作差比较作答;方法2,利用(1)的结论求出 SnS_{ n } , bnb_{ n } ,再分奇偶借助等差数列前n项和公式求出 TnT_{ n } ,并与 SnS_{ n } 作差比较作答.
(1)设等差数列 {an}\left \{ a_{ n } \right \} 的公差为 dd ,而 bn={,k∈N∗b_{ n } =\left \{ \right.,k∈N ^ { * } , 则 b1=a1−6,b2=2a2=2a1+2d,b3=a3−6=a1+2d−6b_{ 1 } =a_{ 1 } -6,b_{ 2 } =2a_{ 2 } =2a_{ 1 } +2d,b_{ 3 } =a_{ 3 } -6=a_{ 1 } +2d-6 , 于是 {\left \{ \right. ,解得 a1=5,d=2a_{ 1 } =5,d=2 , an=a1+(n−1)d=2n+3a_{ n } =a_{ 1 } +(n-1)d=2n+3 , 所以数列 {an}\left \{ a_{ n } \right \} 的通项公式是 an=2n+3a_{ n } =2n+3 .
(2)略

一句话总结

递推数列的核心是化归——用累加、累乘、构造这些方法,把不认识的递推关系,变成我们熟悉的等差或等比。

— Y. · 2026-08-30