数列 A[n] = p A[n-1] + q A[n-2] の 通项公式

这完全是一个数学问题,但有的时候可以用来解决一些计算机问题,所以简单总结一下。

感谢今天上午学长的精彩讲解。 2018.1.24


结论

对于数列A,若 An=pAn1+qAn2 A n = p ⋅ A n − 1 + q ⋅ A n − 2

那么A的通项公式就一定能表示成 An=αxn1+βxn2 A n = α ⋅ x 1 n + β ⋅ x 2 n 的形式。

其中 x1,x2 x 1 , x 2 为方程 x2pxq=0 x 2 − p ⋅ x − q = 0 的两根。(它们也被称为这个数列的特征根)

证明

我只是一个普通人,所以我并不知道数学家是如何脑洞大开,想出这个结论的,但是我们可以尝试着“反向证明”。(这个证明是我自己胡乱YY的,别听我胡扯!)

假如我们已知一个数列的通项公式为 An=αxn1+βxn2 A n = α ⋅ x 1 n + β ⋅ x 2 n ,那么我们能不能试着反推它的递推式。假如: An=pAn1+qAn2 A n = p ⋅ A n − 1 + q ⋅ A n − 2 ,那么有:

[αxn1+βxn2]=p[αxn11+βxn12]+q[αxn21+βxn22] [ α ⋅ x 1 n + β ⋅ x 2 n ] = p ⋅ [ α ⋅ x 1 n − 1 + β ⋅ x 2 n − 1 ] + q ⋅ [ α ⋅ x 1 n − 2 + β ⋅ x 2 n − 2 ]

也就是:
[αxn1]+βxn2=[pαxn11+qαxn21]+pβxn12+qβxn22 [ α ⋅ x 1 n ] + β ⋅ x 2 n = [ p ⋅ α ⋅ x 1 n − 1 + q ⋅ α ⋅ x 1 n − 2 ] + p ⋅ β ⋅ x 2 n − 1 + q ⋅ β ⋅ x 2 n − 2

我们不妨假设,这个式子可以拆成两部分:

αxn1=pαxn11+qαxn21 α ⋅ x 1 n = p ⋅ α ⋅ x 1 n − 1 + q ⋅ α ⋅ x 1 n − 2

βxn2=pβxn12+qβxn22 β ⋅ x 2 n = p ⋅ β ⋅ x 2 n − 1 + q ⋅ β ⋅ x 2 n − 2

系数约掉:

xn1=pxn11+qxn21 x 1 n = p ⋅ x 1 n − 1 + q ⋅ x 1 n − 2

xn2=pxn12+qxn22 x 2 n = p ⋅ x 2 n − 1 + q ⋅ x 2 n − 2

两个式子分别处以 xn11,xn22 x 1 n − 1 , x 2 n − 2 :

x21=px1+qx21px1q=0 x 1 2 = p ⋅ x 1 + q ⇔ x 1 2 − p ⋅ x 1 − q = 0

x22=px2+qx22px2q=0 x 2 2 = p ⋅ x 2 + q ⇔ x 2 2 − p ⋅ x 2 − q = 0

这说明如果 x1,x2 x 1 , x 2 恰是 x2pxq=0 x 2 − p ⋅ x − q = 0 的两根,该递推式就可行。

(不靠谱的证明到此结束)

以后如果我知道了正确的证明方式我就把正确的证明补上。

用法

这样的话,只需要知道这个数列中的任意两项,带入求出 α,β α , β 就得到了完整的通项公式。

用法案例:斐波那契数列

比如斐波那契数列的通项公式:

斐波那契数列的定义:

F0=F1=1 F 0 = F 1 = 1

Fn=Fn1+Fn2:n2 F n = F n − 1 + F n − 2 : n ≥ 2

它的特征方程为:

x2x1=0 x 2 − x − 1 = 0

两个特征根为: x1=1+52,x2=152 x 1 = 1 + 5 2 , x 2 = 1 − 5 2

所以通项公式为 Fn=α(1+52)n+β(152)n F n = α ( 1 + 5 2 ) n + β ( 1 − 5 2 ) n

F0,F1 F 0 , F 1 带入通项公式。

F0=α+β=1 F 0 = α + β = 1

F1=α1+52+β152=1 F 1 = α ⋅ 1 + 5 2 + β ⋅ 1 − 5 2 = 1

解方程得:

α=5+125,β=5125 α = 5 + 1 2 5 , β = 5 − 1 2 5

所以,斐波那契数列通项公式为: Fn=5+125(1+52)n+5125(152)n F n = 5 + 1 2 5 ( 1 + 5 2 ) n + 5 − 1 2 5 ( 1 − 5 2 ) n

注意,这个通项公式是从n=0开始的,我看到百度上给出了从n=1开始的通项公式。

若将 F1=F2=1 F 1 = F 2 = 1 带入通项公式:

F1=α1+52+β152=1 F 1 = α ⋅ 1 + 5 2 + β ⋅ 1 − 5 2 = 1

F2=α(1+52)2+β(152)2=1 F 2 = α ⋅ ( 1 + 5 2 ) 2 + β ⋅ ( 1 − 5 2 ) 2 = 1

解得: α=15,β=15 α = 1 5 , β = − 1 5

所以通项公式为: Fn=15(1+52)n15(152)n F n = 1 5 ( 1 + 5 2 ) n − 1 5 ( 1 − 5 2 ) n

这个式子只需要向左平移一下就可以得到刚才求出的从0开始的那个通项公式(这说明我解方程没解错)。

—> 百度百科戳这里 <—

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值