快速矩阵幂解Fibonacci数列
快速幂运算
考虑求解一个数x的n次方:
线性方法:
long long f(int x,int n){
long ans=1;
while(n--){
ans=*x
}
return ans;
}
显然此算法的时间复杂度为o(n);所以当n很大的时候,此算法的效率就显得很低下
接下来考虑对于一种更高效的算法,以n=22来观察
此等式显然恒成立,接下来以n=22为例,在计算机中22的存储方式
很容易可以得到
回归到n上有
其中表示在二进制中对应
原创
2021-12-08 23:57:21 ·
177 阅读 ·
1 评论