线性代数 —— 线性递推关系
生活随笔
收集整理的這篇文章主要介紹了
线性代数 —— 线性递推关系
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
【概述】
線性遞推關(guān)系是組合計(jì)數(shù)中一種常見的遞推關(guān)系,關(guān)系式為:
最著名的線性遞推關(guān)系就是 Fibonacci 數(shù)列,有:f(1)=f(2)=1,f(n)=f(n-1)+f(n-2)
對(duì)于線性遞推關(guān)系,直接利用遞推式,需要在 O(nd) 的時(shí)間內(nèi)才能求出 F(n),時(shí)間無法承受,可以考慮借助矩陣來進(jìn)行優(yōu)化。
現(xiàn)在已經(jīng)有了:,那么再加上??這種顯然成立的式子,于是有:
根據(jù)矩陣乘法的定義,即有:,于是可以利用矩陣快速冪來解決,時(shí)間復(fù)雜度僅為
例如,對(duì)于遞推公式:
可以構(gòu)造矩陣:
化簡后:
由于 f(0)=0,f(1)=1,那么有:
故答案為:
因此矩陣快速冪求出 A 后即得答案
關(guān)于矩陣快速冪:點(diǎn)擊這里
【例題】
總結(jié)
以上是生活随笔為你收集整理的线性代数 —— 线性递推关系的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图论 —— DAG 的覆盖与独立集
- 下一篇: 数论 —— 佩尔方程与连分数