- 1
- 2
- 3
- 4
- 5
矩阵快速幂与斐波那契数列的O(log n)解法.docx
资料介绍
矩阵快速幂与斐波那契数列的O(log n)解法
一、问题的提出
计算斐波那契数列的第n项是一个经典问题。朴素递归的时间复杂度为 O(2ⁿ),线性迭代为 O(n)。但通过矩阵快速幂,可以在 O(log n) 时间内计算出第n项。
三、矩阵快速幂的实现
3.1 矩阵定义与乘法
typedef struct {
long long a[2][2];
} Matrix2;
Matrix2 matrixMultiply(Matrix2 m1, Matrix2 m2) {
Matrix2 result;
result.a[0][0] = m1.a[0][0] * m2.a[0][0] + m1.a[0][1] * m2.a[1][0];
result.a[0][1] = m1.a[0][0] * m2.a[0][1] + m1.a[0][1] * m2.a[1][1];
result.a[1][0] = m1.a[1][0] * m2.a[0][0] + m1.a[1][1] * m2.a[1][0];
result.a[1][1] = m1.a[1][0] * m2.a[0][1] + m1.a[1][1] * m2.a[1][1];
return result;
}
3.2 矩阵快速幂
Matrix2 matrixPower(Matrix2 base, long long n) {
Matrix2 result = {1, 0, 0, 1}; // 单位矩阵
while (n > 0) {
if (n & 1) {
result = matrixMultiply(result, base);
}
base = matrixMultiply(base, base);
部分文件列表
| 文件名 | 大小 |
| 矩阵快速幂与斐波那契数列的O(log_n)解法.docx | 38K |
最新上传
-
yahuang001 打赏3.00元 3天前
-
yahuang001 打赏1.00元 3天前
-
zhongshaoxiong 打赏3.00元 3天前
-
他山之石可攻玉 打赏60.00元 3天前
用户:烟雨
-
江岚 打赏210.00元 3天前
用户:潇潇江南
-
江岚 打赏100.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:江岚
-
21ic下载 打赏210.00元 3天前
用户:潇潇江南
-
21ic下载 打赏60.00元 3天前
用户:他山之石可攻玉
-
21ic下载 打赏60.00元 3天前
用户:烟雨
-
21ic下载 打赏60.00元 3天前
用户:w178191520
-
21ic下载 打赏60.00元 3天前
用户:w993263495
-
21ic下载 打赏110.00元 3天前
用户:xzxbybd
-
21ic下载 打赏60.00元 3天前
用户:zq_1943
-
21ic下载 打赏20.00元 3天前
用户:kk1957135547
-
21ic下载 打赏20.00元 3天前
用户:sun2152
-
21ic下载 打赏20.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏20.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:w1966891335
-
21ic下载 打赏35.00元 3天前
用户:有理想666
-
21ic下载 打赏15.00元 3天前
用户:nuaanuaa111
-
21ic下载 打赏20.00元 3天前
用户:liqiang9090
-
21ic下载 打赏15.00元 3天前
用户:ningmengge
-
21ic下载 打赏10.00元 3天前
用户:mulanhk
-
21ic下载 打赏5.00元 3天前
用户:asys
-
21ic下载 打赏10.00元 3天前
用户:舞蹈荀彧
-
21ic小能手 打赏5.00元 3天前
资料:磁编码器开源方案
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏50.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏3.00元 3天前




全部评论(0)