数列求和与递推式求解

求解递推式与数列求和方法汇总

1. 求和因子法 (Summation Factor)

① 一阶线性递推

若递推式形如:

\[a_n \bar{T}_n = b_n \bar{T}_{n-1} + C_n \]

要求 \(\bar{T}_n\) 的封闭形式,可采用求和因子 (summation factor)。

用 \(S_n\) 乘上两边:

\[S_n a_n \bar{T}_n = S_n b_n \bar{T}_{n-1} + S_n C_n \]

取 \(S_n\) 满足:

\[S_n b_n = S_{n-1} a_{n-1} \]

则转化为:

\[S_n a_n \bar{T}_n = S_{n-1} a_{n-1} \bar{T}_{n-1} + S_n C_n \]

记 \(F_n = S_n a_n \bar{T}_n\),则有:

\[F_n = F_{n-1} + S_n C_n \]

从而有:

\[F_n = S_0 a_0 \bar{T}_0 + \sum_{k=1}^n S_k C_k \]

即:

\[\bar{T}_n = \frac{1}{S_n a_n} \left( S_0 a_0 \bar{T}_0 + \sum_{k=1}^n S_k C_k \right) \]

下面来求解 \(S_n\):

由 \(S_n = \frac{S_{n-1} a_{n-1}}{b_n}\),于是有:

\[S_n = k \cdot \frac{\prod_{i=1}^{n-1} a_{i-1}}{\prod_{i=2}^{n} b_i}, \quad k \text{为不等于0的常数} \]

eg1: 求解“快速排序”次数 \(C_n\)

\[\begin{cases} C_0 = C_1 = 0 & \text{①} \\ C_n = n+1 + \frac{2}{n} \sum_{k=0}^{n-1} C_k & \text{②} \end{cases} \]

其中 \(C_n\) 为“快速排序”平均比较次数。

先将 ② 中 \(n\) 乘开:

\[nC_n = n^2 + n + 2\sum_{k=0}^{n-1} C_k \]

向前差分得:

\[nC_n - (n-1)C_{n-1} = 2n + 2C_{n-1} \]

\[\Rightarrow nC_n = (n+1)C_{n-1} + 2n \quad (n>2) \]

构造求和因子:

\[S_n = \frac{\prod_{k=2}^n k}{\prod_{k=2}^n (k+1)} = \frac{2}{(n+1)n} \]

故 \(C_n\) 的通项公式推导(利用求和因子法结果):

\[C_n = \frac{n+1}{2} \left( 2C_1 \cdot \frac{1}{2} + \sum_{k=2}^n \frac{4}{k+1} \right) - \frac{2}{3}(n+1) \]

\[= 2(n+1) \sum_{k=2}^n \frac{1}{k+1} - \frac{2}{3}(n+1) \quad (n>1) \]

Tip: \(-\frac{2}{3}(n+1)\) 是由 \(n=2\) 时特别讨论得到的修正项。

用调和级数 \(H_n\) 表示:
即

\[C_n = 2(n+1)H_n - \frac{8}{3}n - \frac{2}{3} \]

其中 \(H_n = \sum_{k=1}^n \frac{1}{k}\)


2. 扰动法 (Perturbation Method)

格式:

\[S_n + a_{n+1} = S_{n+1} = a_0 + \sum_{k=1}^{n+1} a_k \]

Tip: 移项得到 \(S_{n+1} - S_n = a_{n+1}\),即 \(S_n\) 的向前差分。

eg2: 求几何级数 \(G_n = \sum_{k=0}^n ax^k\) 的封闭形式。

\[G_n + ax^{n+1} = G_{n+1} = ax^0 + \sum_{k=0}^n ax^{k+1} = a + xG_n \]

提有 \(G_n\):

\[G_n(1-x) = a - ax^{n+1} \]

\[G_n = \frac{a - ax^{n+1}}{1-x} \]


3. 归纳法

如对 \(\sum_{k=0}^n k^2\) 求和:
若猜测出答案为 \(\frac{n(n+\frac{1}{2})(n+1)}{3}\),对其归纳:

设 \(S_n = \sum_{k=0}^n k^2\),验证 \(S_{n+1}\) 满足通项。

\[S_n = S_{n-1} + n^2 \]

\[\iff 3S_n = (n^3 - \frac{3}{2}n^2 + \frac{1}{2}n) + 3n^2 = n(n+\frac{1}{2})(n+1) \]

故上式成立。


4. 待定系数法

已知 \(S_n = \sum_{i=0}^n i^2\)。
知 \(S_n\) 一定为三次多项式。
不妨设 \(S_n = \alpha n^3 + \beta n^2 + \gamma n + \lambda\)。
带入前四项求解方程组即可定出系数。


5. 利用积分 (近似与误差分析)

已知 \(S_n = \sum_{k=0}^n k^2\)。
知 \(\int_0^n x^2 dx = \frac{n^3}{3}\)。

记误差数列 \(E_n = S_n - \frac{1}{3}n^3\):

\[E_n = S_{n-1} + n^2 - \frac{1}{3}n^3 \]

\[= (E_{n-1} + \frac{1}{3}(n-1)^3) + n^2 - \frac{1}{3}n^3 \]

\[= E_{n-1} + n - \frac{1}{3} \]

故 \(E_n\) 满足递推 \(E_n = E_{n-1} + n - \frac{1}{3}\)。

\[E_n - E_0 = \sum_{i=1}^n i - \sum_{i=1}^n \frac{1}{3} = \frac{n(n+1)}{2} - \frac{1}{3}(n) \]

(注:笔记中此处略有简略,核心思想是将高阶求和降阶)

\(\therefore S_n = E_n + \frac{1}{3}n^3 = \frac{n(n+1)(2n+1)}{6}\)


6. 特征方程法

定义移位算子 \(E\) (\(Ea_n = a_{n+1}\))。
如对于递推式:

\[a_n = c_1 a_{n-1} + c_2 a_{n-2} \]

可改写为 \(a_n (E^2 - c_1 E - c_2) = 0\) (注:此处笔记写法略有不严谨,标准写法应为算子作用于序列)。
令 \(P(x) = x^2 - c_1 x - c_2\)。
得 \(P(E)a_n = 0\)。

我们称 \(P(E)\) 为该递推式的零化多项式。
由于 \(E(r^n) = r \cdot r^n = r^{n+1}\),
所以 \(\forall P\),都有 \(P(E)(r^n) = P(r) \cdot r^n\)。
故要使 \(P(E)(r^n) = 0\),则需 \(P(r) = 0\)。
故 \(a_n\) 可以表示为 \(r^n\) 的线性组合。

也可以从矩阵视角理解:

\[\begin{pmatrix} a_n \\ a_{n-1} \end{pmatrix} = \underbrace{\begin{pmatrix} c_1 & c_2 \\ 1 & 0 \end{pmatrix}}_{M} \begin{pmatrix} a_{n-1} \\ a_{n-2} \end{pmatrix} \]

故求通项即求 \(M^n\),即解 \(\det(M - \lambda I) = 0\)。

\[\begin{vmatrix} c_1 - \lambda & c_2 \\ 1 & -\lambda \end{vmatrix} = \lambda^2 - c_1 \lambda - c_2 = 0 \]

若 \(M\) 有两个不同特征值 \(\lambda_1, \lambda_2\),
则 \(M = P \cdot \text{diag}(\lambda_1, \lambda_2) \cdot P^{-1}\)。
其中 \(\text{diag}(\lambda_1, \lambda_2)\) 表示对角矩阵,
\(P, P^{-1}\) 分别表示特征向量矩阵和其逆。
故 \(a_n\) 可表示为 \(\lambda_1^n\) 和 \(\lambda_2^n\) 的线性组合。

若 \(M\) 有重根:
则 \(M\) 中含一个 \(m \times m\) 的 Jordan 块:

\[J_2(\lambda) = \begin{pmatrix} \lambda & 1 \\ 0 & \lambda \end{pmatrix} = \lambda I + N \]

其中 \(N^m = 0\)。
由二项式定理知:

\[J_2(\lambda)^n = (\lambda I + N)^n = \sum_{j=0}^n \binom{n}{j} \lambda^{n-j} N^j \]

\(\binom{n}{j}\) 是关于 \(n\) 的 \(j\) 次多项式。

故 \(J_2(\lambda)^n\) 的每个非零元素都形如 \(p(n)\lambda^n\)。
故可以写为:

\[a_n = (A_0 + A_1 n)\lambda^n \]


7. 生成函数法 (Generating Functions)

对于无限数列 \(\{a_n\}\),其生成函数定义为:

\[G(x) = \sum_{i=0}^{\infty} a_i x^i \]

若对于有限数列,记其最后一项之后的项全为0,即可转换为无限数列。

如求 \(a_n - c_1 a_{n-1} - c_2 a_{n-2} = 0\) 的通项:
记生成函数 \(G(x) = \sum_{i=0}^{\infty} a_i x^i\) ①

则:

\[c_1 x G(x) = \sum_{i=0}^{\infty} c_1 a_i x^{i+1} = \sum_{j=1}^{\infty} c_1 a_{j-1} x^j \quad \text{②} \]

\[c_2 x^2 G(x) = \sum_{i=0}^{\infty} c_2 a_i x^{i+2} = \sum_{j=2}^{\infty} c_2 a_{j-2} x^j \quad \text{③} \]

① - ② - ③,得:

\[G(x)(1 - c_1 x - c_2 x^2) = a_0 + (a_1 - c_1 a_0)x \]

故:

\[G(x) = \frac{a_0 + (a_1 - c_1 a_0)x}{1 - c_1 x - c_2 x^2} \]

设分母分解因式为 \((1-r_1 x)(1-r_2 x)\),接下来讨论 3 种情况:

① \(r_1 \neq r_2\)

分解为:

\[G(x) = \frac{C_1}{1-r_1 x} + \frac{C_2}{1-r_2 x} \]

由级数公式 \(\frac{1}{1-rx} = \sum r^n x^n\) 知:

\[G(x) = \sum (C_1 r_1^n + C_2 r_2^n) x^n \]

故 \(a_n = C_1 r_1^n + C_2 r_2^n\)。

② \(r_1 = r_2 = r\)

分解为:

\[G(x) = \frac{C_1}{1-rx} + \frac{C_2}{(1-rx)^2} \]

由级数公式 \(\frac{1}{(1-rx)^2} = \sum (n+1)r^n x^n\):

\[G(x) = \sum [C_1 r^n + C_2 (n+1)r^n] x^n \]

故 \(a_n = C_1 r^n + C_2 (n+1)r^n\)。

③ 共轭复根

设根为 \(\alpha \pm i\beta\)。
分解为:

\[\frac{C}{1-(\alpha+i\beta)x} + \frac{\overline{C}}{1-(\alpha-i\beta)x} \]

用 Euler 公式合并为:

\[a_n = \rho^n (K_1 \cos n\theta + K_2 \sin n\theta) \]


posted @ 2026-07-20 22:11  ZzhAllen  阅读(110)  评论(0)    收藏  举报