斐波那契數列三種實現 矩陣乘法 矩陣cimi

2021-08-07 18:29:10 字數 2151 閱讀 9370

packagecom.lyk.kk;

/*** created by administrator on 2017/9/4.

*/public classa1 }}

returnresult;

}//矩陣的n次冪

public intmatrixpower(intm,intp)

inttemp=m;

for(;p!=0;p>>=1)

}returnresult;

}//求斐波那契數列。用矩陣實現。複雜度0(longn).

public intf3(intn)

intbase=,};

intresult=matrixpower(base,n-2);

returnresult[0][0]+result[1][0];

}//求斐波那契額數列,o(n)

public intf2(intn)

intnow=1;

intpre=1;

inttemp=0;

for(inti=3;i<=n;i++)

returnnow;

}//求斐波那契數列,暴力遞迴o(2^n)

public intf1(intn)

returnf1(n-1)+f1(n-2);

}packagecom.lyk.kk;

/*** created by administrator on 2017/9/4.

*/public classa1 }}

returnresult;

}//矩陣的n次冪

public intmatrixpower(intm,intp)

inttemp=m;

for(;p!=0;p>>=1)

}returnresult;

}//求斐波那契數列。用矩陣實現。複雜度0(longn).

public intf3(intn)

intbase=,};

intresult=matrixpower(base,n-2);

returnresult[0][0]+result[1][0];

}//求斐波那契額數列,o(n)

public intf2(intn)

intnow=1;

intpre=1;

inttemp=0;

for(inti=3;i<=n;i++)

returnnow;

}//求斐波那契數列,暴力遞迴o(2^n)

public intf1(intn)

returnf1(n-1)+f1(n-2);

}}

斐波那契數列 矩陣乘法

f 1 1 f 2 1 f n f n 1 f n 2 n 2 且 n 為整數 題目描述 請你求出 f n mod 1000000007 的值。輸入輸出格式 輸入格式 第 1 行 乙個整數 n 輸出格式 第 1 行 f n mod 1000000007 的值 輸入輸出樣例 輸入樣例 1 5輸出樣例 ...

矩陣乘法 斐波那契數列II III IV

ii 求出斐波那契數列的第n項 1 n 2 31 模10000的值 iii 求出f n f n 2 f n 1 1模9973的值 iv 求出f n f n 2 f n 1 n 1模9973的值 f 1 f 2 1 ii 矩陣乘法,設矩陣 那麼顯然可以乘矩陣 得到矩陣 那麼得式子 a 即 a 1 同時...

矩陣乘法 求斐波那契數列

先簡單介紹一下矩陣乘法求斐波那契數列的原理 f n 是第n項的值。f 1 1 f 2 1 f n f n 1 n 2 下面的介紹是我從網上查到了,收益匪淺。分兩步推導 問題的求解就變成 二分法可用遞迴和非遞迴來求 下面是 定義矩陣 struct matrix 定義2 2的矩陣 void mul ma...