再论斐波那契数列(矩阵&快速幂)

以前已经做过斐波那契数列了,想想当时做的时候只是用离线的做法,但是时过境迁,现在这种做法已经不再适合超级超级超级大的数了,数组不能再开辟那么大了,所以现在就要需要Optimize~Optimize~~~~~

这就用到快速幂的方法了,现在就借这个题说说快速幂~

由通式可得,斐波那契数列是个二阶递推数列,因此,存一个二维矩阵A,使得

Fn+3 =(Fn+2,Fn+1)=(Fn+1,Fn)*A;

有规律可得,A=  1 1

                           1 0

Fn+4=(Fn+3,Fn+2)=(Fn+1,Fn)*A*A =)=(Fn+1,Fn)*A^2;

这样很自然的就成了矩阵的运算了,也就最大限度的降低了其复杂程度

结合着这道题看网址:http://blog.csdn.net/error/404.html?from=http%3a%2f%2fblog.csdn.net%2fu014665013%2farticle%2fdetails%2f40452303

原文地址:https://www.cnblogs.com/zswbky/p/5432059.html