疯子的算法总结(五) 矩阵乘法 (矩阵快速幂)
生活随笔
收集整理的這篇文章主要介紹了
疯子的算法总结(五) 矩阵乘法 (矩阵快速幂)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
學過線性代數的都知道矩陣的乘法,矩陣乘法條件第為一個矩陣的行數等與第二個矩陣的列數,乘法為第一個矩陣的第一行乘以第二個矩陣的第一列的對應元素的和作為結果矩陣的第一行第一列的元素。(詳解參見線性代數)
于是我們可以寫出矩陣懲乘法的代碼
對于方陣我們能夠自己乘自己,就是乘冪運算。
我們參考快速冪,將數字的乘法換成矩陣的乘法,可以得出矩陣快速冪的代碼;
應用:矩陣快速冪求斐波那契數列。
我們定義一個矩陣A
|0 1|
|1 1|
定義F(0)=0,F(1)=1。
構成矩陣F矩陣|0 1|
A矩陣的N次冪,乘以F矩陣的第一項就是第N個斐波那契數列。
證明:
F矩陣乘以A矩陣代表將右側元素給左側,右側元素等于右側加左側。矩陣的乘法滿足結合律,所以FXX*……N……X = F (XXX……*X)
所以定義不同的F矩陣可以得到不同的斐波那契數列。
總結
以上是生活随笔為你收集整理的疯子的算法总结(五) 矩阵乘法 (矩阵快速幂)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 比亚迪1月销量:汉卖出1.22万辆 宋P
- 下一篇: CodeForces - 224C. B