常系数齐次线性递推
常系数线性齐次递推
给出递推方程$F(x)=\sum_{i=1}^{k} a_iF(x-i)$
这个当$k$很小的时候,可以使用$O(k^3\times log(n))$的时间复杂度内解决
万一$k$比较大怎么办,我们需要优化一下
------
特征多项式及$Cayley-Hamilton$定理
------
特征多项式的定义$:$
设$A$是$n$阶矩阵,若数$\lambda$和非零列向量$x$使关系式
$Ax=\lambda x\ \ \ (1)$
成立
那么$\lambda$称为矩阵$A$的特征值,非零向量$x$称为$A$对于$\lambda$的特征向量
$(A-\lambda E)x=0\ \ \ \ (2)$
此式有解的充分必要条件是其行列式$|A-\lambda E|=0$
$(1)$可以看成是特征方程
$(2)$可以看成是特征多项式
矩阵的多项式
不等于矩阵多项式
以下是一个关于$A$的多项式
$f(A)=a_0E+a_1A+a_2A^2+...$
$f(A)g(A)=g(A)f(A)$
多项式相乘满足交换律
------
$Cayley-Hamilton$定理
关于$A$的特征多项式$\phi(\lambda)=det(\lambda E-A)$
有$\phi(A)=0$
------
$n$阶常系数齐次线性递推矩阵的特征多项式求法
我们已经有了递推矩阵,然后求他的特征多项式
结论$:$
$\phi(\lambda)=(-1)^n(\lambda^n-\sum_{i=1}^na_i\lambda^{n-i})$
------
常系数齐次线性递推
------
引入多项式
设$x^n=f(x)g(x)+h(x)$
在已知$g(x)$的情况下,我们可以通过计算得到$f(x),h(x)$
------
带入矩阵
我们将$A$视为未知量
得到
$A^n=f(A)g(A)+h(A)$
那么$g(A)=\phi(A)=0$那么
$A^n=h(A)=\sum_{i=0}^{k-1}h_iA^i$
------
如何计算
我们设$1\times k$的矩阵
$B_i^T={F(i+k-1),F(i+k-2),...,F(i)}$
左右同乘$B_1$
$A^nB_1=h(A)B_1$
------
我找到一种很妙的思路
考虑斐波那契矩阵的多项式
我们要求$x^5$怎么来的,无非是一次一次对转移矩阵的多项式取模得到最后
那么我们现在求$F(i)=p_1f_{i-1}+p_2f_{i-2}+...$
要求$f(n)$,只需要求$x^n$对转移的特征多项式取模就好了,很妙

浙公网安备 33010602011771号