目錄
- 1. 遞推關系建立
- 2. 常系數齊次遞推關系的求解
- 3. 常系數非齊次遞推關系的求解
- 4. 迭代法
1. 遞推關系建立
給定一個數的序列 f ( 0 ) , f ( 1 ) , . . . , f ( n ) , . . . , f (0), f(1), ..., f(n ),... , f(0),f(1),...,f(n),..., 若存在整數 n 0 n_0 n0? ,使當 n ≥ n 0 n≥ n_0 n≥n0? 時,可以用等號(或大于號、小于號)將 f ( n ) f (n) f(n) 與前面的某些項 f ( i ) ( 0 ≤ i < n ) f (i) (0 ≤ i< n) f(i)(0≤i<n) 聯系起來,這樣的式子稱作遞推關系
建立遞推關系的步驟如下:
- 找第 n 項與其前面最近幾項的關系
- 獲得最前面幾項的具體值,即初值
習題1、 n 位四進制數中,有偶數個 0 的序列共有多少個?
解: 設 f ( n ) f(n) f(n) 表示 n 位四進制數中有偶數個 0 的序列,它可由兩部分生成:
(1) 在 n ?1位四進制數中有偶數個 0 的序列上再添一位非 0(即 1,2,3)的數,可產生 3 f ( n ? 1 ) 3f (n ?1) 3f(n?1) 個
(2) 在 n ?1位四進制數中有奇數個 0 的序列上再添一位 0,可產生 4 n ? 1 ? f ( n ? 1 ) 4^{n-1}-f(n-1) 4n?1?f(n?1) 個
由加法原則 f ( n ) = 3 f ( n ? 1 ) + 4 n ? 1 ? f ( n ? 1 ) = 4 n ? 1 + 2 f ( n ? 1 ) f(n)=3f(n-1)+4^{n-1}-f(n-1)=4^{n-1}+2f(n-1) f(n)=3f(n?1)+4n?1?f(n?1)=4n?1+2f(n?1)顯然 f ( 1 ) = 3 f(1)=3 f(1)=3 所以構成帶初值的遞推關系 { f ( n ) = 4 n ? 1 + 2 f ( n ? 1 ) f ( 1 ) = 3 \left\{\begin{matrix} f(n)=4^{n-1}+2f(n-1)\\ f(1)=3 \end{matrix}\right. {f(n)=4n?1+2f(n?1)f(1)=3?
習題2、 1×n 棋盤用紅、白、藍 3 種顏色著色,不允許相鄰兩格都著紅色,求著色方案數
解: 設 f ( n ) f (n ) f(n) 表示滿足條件的著色方案數。在該棋盤上著色,其方案可分成如下 2 類
(1) 第一個格子著白/藍色,余下的是1x(n-1)的棋盤,它所滿足條件的著色方案數是: 2 f ( n ? 1 ) 2f(n-1) 2f(n?1)
(2) 第一個格子著紅色,第二個格子著白/藍色,余下1x(n-2)的棋盤,著色方案數是: 2 f ( n ? 2 ) 2f(n-2) 2f(n?2)
故總的著色方案數為 { f ( n ) = 2 f ( n ? 1 ) + 2 f ( n ? 2 ) f ( 1 ) = 3 , f ( 2 ) = 8 \left\{\begin{matrix} f(n)=2f(n-1)+2f(n-2)\\ f(1)=3,f(2)=8 \end{matrix}\right. {f(n)=2f(n?1)+2f(n?2)f(1)=3,f(2)=8?
給定遞推關系: f ( n ) = c 1 ( n ) f ( n ? 1 ) + c 2 ( n ) f ( n ? 2 ) + . . . + c k ( n ) f ( n ? k ) + g ( n ) f(n)=c_1(n)f(n-1)+c_2(n)f(n-2)+...+c_k(n)f(n-k)+g(n) f(n)=c1?(n)f(n?1)+c2?(n)f(n?2)+...+ck?(n)f(n?k)+g(n)其中 c k ( n ) ≠ 0 c_k(n)\ne 0 ck?(n)=0,則稱該關系為 { f ( n ) } \{ f(n)\} {f(n)} 的 k 階線性遞推關系
如果 g ( n ) = 0 g(n)=0 g(n)=0 , 則稱之為齊次
2. 常系數齊次遞推關系的求解
f ( n ) = c 1 ( n ) f ( n ? 1 ) + c 2 ( n ) f ( n ? 2 ) + . . . + c k ( n ) f ( n ? k ) f(n)=c_1(n)f(n-1)+c_2(n)f(n-2)+...+c_k(n)f(n-k) f(n)=c1?(n)f(n?1)+c2?(n)f(n?2)+...+ck?(n)f(n?k)
方程 x k ? c 1 x k ? 1 ? c 2 x k ? 2 ? . . . ? c k = 0 x^k-c_1x^{k-1}-c_2x^{k-2}-...-c_k=0 xk?c1?xk?1?c2?xk?2?...?ck?=0是上述遞推關系的的特征方程,它的 k k k 個根 q 1 , q 2 , . . . , q k q_1,q_2,...,q_k q1?,q2?,...,qk?(可能有重根)叫作該遞推關系的特征根,其中 q i ( i = 1 , 2 , . . . , k ) q_i (i=1,2,... , k ) qi?(i=1,2,...,k)是復數。
定理 2.1:設 q q q 是非零復數,當且僅當 q 是它的特征根, f ( n ) = q n f(n)=q^n f(n)=qn 是遞推關系的解
定理 2.2:如果 h 1 ( n ) , h 2 ( n ) h_1(n),h_2(n) h1?(n),h2?(n)都是遞推關系的解, b 1 b_1 b1?, b 2 b_2 b2?是常數,則 b 1 h 1 ( n ) + b 2 h 2 ( n ) b_1h_1(n)+b_2h_2(n) b1?h1?(n)+b2?h2?(n)也是遞推關系的解
定理 2.3:設 q 1 , q 2 , . . . , q k q_1,q_2,...,q_k q1?,q2?,...,qk?是遞推關系的 k 個互不相等的特征根, b 1 b_1 b1?, b 2 b_2 b2?是常數,則 f ( n ) = b 1 q 1 n + b 2 q 2 n + . . . + b k q k n f(n)=b_1q_1^n+b_2q_2^n+...+b_kq_k^n f(n)=b1?q1n?+b2?q2n?+...+bk?qkn? 是遞推關系通解
習題3、 求解遞推關系 { f ( n ) = 7 f ( n ? 1 ) ? 12 f ( n ? 2 ) f ( 0 ) = 2 , f ( 1 ) = 7 \left\{\begin{matrix} f(n)=7f(n-1)-12f(n-2)\\ f(0)=2,f(1)=7 \end{matrix}\right. {f(n)=7f(n?1)?12f(n?2)f(0)=2,f(1)=7?
解: 先求這個遞推關系的通解。其特征方程為 x 2 ? 7 x + 12 = 0 x^2-7x+12=0 x2?7x+12=0,解這個方程得 x 1 = 4 , x 2 = 3 x_1=4,x_2=3 x1?=4,x2?=3所以通解為 f ( n ) = c 1 ? 4 n + c 2 ? 3 n f(n)=c_1\cdot 4^n+c_2 \cdot 3^n f(n)=c1??4n+c2??3n
帶入初值確定 c 1 , c 2 c_1,c_2 c1?,c2?,得 { c 1 + c 2 = 2 4 c 1 + 3 c 2 = 7 \left\{\begin{matrix} c_1+c_2=2\\ 4c_1+3c_2=7 \end{matrix}\right. {c1?+c2?=24c1?+3c2?=7?
得 c 1 = 1 , c 2 = 1 c_1=1 ,c_2=1 c1?=1,c2?=1
所以通解為 f ( n ) = 4 n + 3 n f(n)=4^n+3^n f(n)=4n+3n
習題4、 求解遞推關系 { f ( n ) = f ( n ? 1 ) + 9 f ( n ? 2 ) ? 9 f ( n ? 3 ) f ( 0 ) = 0 , f ( 1 ) = 1 , f ( 2 ) = 2 \left\{\begin{matrix} f(n)=f(n-1)+9f(n-2)-9f(n-3)\\ f(0)=0,f(1)=1,f(2)=2 \end{matrix}\right. {f(n)=f(n?1)+9f(n?2)?9f(n?3)f(0)=0,f(1)=1,f(2)=2?
解: 先求這個遞推關系的通解。其特征方程為 x 3 ? x 2 ? 9 x + 9 = 0 x^3-x^2-9x+9=0 x3?x2?9x+9=0,解這個方程得 x 1 = 1 , x 2 = 3 , x 3 = ? 3 x_1=1,x_2=3,x_3=-3 x1?=1,x2?=3,x3?=?3所以通解為 f ( n ) = c 1 ? 1 n + c 2 ? 3 n + c 3 ? ( ? 3 ) n f(n)=c_1\cdot 1^n+c_2 \cdot 3^n+c_3\cdot (-3)^n f(n)=c1??1n+c2??3n+c3??(?3)n
帶入初值確定 c 1 , c 2 , c 3 c_1,c_2,c_3 c1?,c2?,c3?,得 { c 1 + c 2 + c 3 = 0 c 1 + 3 c 2 ? 3 c 3 = 1 c 1 + 9 c 2 + 9 c 3 = 2 \left\{\begin{matrix} c_1+c_2+c_3=0\\ c_1+3c_2-3c_3=1\\ c_1+9c_2+9c_3=2 \end{matrix}\right. ? ? ??c1?+c2?+c3?=0c1?+3c2??3c3?=1c1?+9c2?+9c3?=2?
得 c 1 = ? 1 4 , c 2 = 1 3 , c 3 = ? 1 12 c_1=-\frac{1}{4} ,c_2=\frac{1}{3},c_3=-\frac{1}{12} c1?=?41?,c2?=31?,c3?=?121?
所以通解為 f ( n ) = ? 1 4 ? 1 n + 1 3 ? 3 n ? 1 12 ? ( ? 3 ) n f(n)=-\frac{1}{4}\cdot 1^n+\frac{1}{3} \cdot 3^n-\frac{1}{12}\cdot (-3)^n f(n)=?41??1n+31??3n?121??(?3)n
定理 2.4:設 q 1 , q 2 , . . . , q k q_1,q_2,...,q_k q1?,q2?,...,qk?是遞推關系的全部不同的特征根,其重數分別為 e 1 , e 2 , . . . , e t e_1,e_2,...,e_t e1?,e2?,...,et? ( e 1 + e 2 + . . . + e t = k ) (e_1+e_2+...+e_t=k) (e1?+e2?+...+et?=k),則遞推關系的通解為 f ( n ) = f 1 ( n ) + f 2 ( n ) + . . . f t ( n ) f(n)=f_1(n)+f_2(n)+...f_t(n) f(n)=f1?(n)+f2?(n)+...ft?(n)其中 f i ( n ) = ( b i 1 + b i 2 n + . . . + b i e i n e i ? 1 ) ? q i n ( 1 ≤ i ≤ t ) f_i(n)=(b_{i_1}+b_{i_2}n+...+b_{i_{e_i}}n^{e_i-1})\cdot q_i^n \quad(1\le i\le t) fi?(n)=(bi1??+bi2??n+...+biei???nei??1)?qin?(1≤i≤t)
習題5、 求解遞推關系 { f ( n ) = 3 f ( n ? 2 ) ? 2 f ( n ? 3 ) ( n ≥ 3 ) f ( 0 ) = 1 , f ( 1 ) = 0 , f ( 2 ) = 0 \left\{\begin{matrix} f(n)=3f(n-2)-2f(n-3)\quad (n\ge3)\\ f(0)=1,f(1)=0,f(2)=0 \end{matrix}\right. {f(n)=3f(n?2)?2f(n?3)(n≥3)f(0)=1,f(1)=0,f(2)=0?
解: 先求這個遞推關系的通解。其特征方程為 x 3 ? 3 x + 2 = 0 x^3-3x+2=0 x3?3x+2=0,解這個方程得 x 1 = 1 , x 2 = 1 , x 3 = ? 2 x_1=1,x_2=1,x_3=-2 x1?=1,x2?=1,x3?=?2所以通解為 f ( n ) = c 1 ? 1 n + c 2 n ? 1 n + c 3 ? ( ? 2 ) n f(n)=c_1\cdot 1^n+c_2n \cdot 1^n+c_3\cdot (-2)^n f(n)=c1??1n+c2?n?1n+c3??(?2)n
帶入初值確定 c 1 , c 2 , c 3 c_1,c_2,c_3 c1?,c2?,c3?,得 { c 1 + c 3 = 1 c 1 + c 2 ? 2 c 3 = 0 c 1 + 2 c 2 + 4 c 3 = 0 \left\{\begin{matrix} c_1+c_3=1\\ c_1+c_2-2c_3=0\\ c_1+2c_2+4c_3=0 \end{matrix}\right. ? ? ??c1?+c3?=1c1?+c2??2c3?=0c1?+2c2?+4c3?=0?
得 c 1 = 8 9 , c 2 = ? 2 3 , c 3 = 1 9 c_1=\frac{8}{9} ,c_2=-\frac{2}{3},c_3=\frac{1}{9} c1?=98?,c2?=?32?,c3?=91?
所以通解為 f ( n ) = 8 9 ? 1 n ? 2 3 n ? 1 n + 1 9 ? ( ? 2 ) n = 8 9 ? 2 3 n + 1 9 ? ( ? 2 ) n f(n)=\frac{8}{9}\cdot 1^n-\frac{2}{3}n \cdot 1^n+\frac{1}{9}\cdot (-2)^n=\frac{8}{9}-\frac{2}{3}n+\frac{1}{9}\cdot (-2)^n f(n)=98??1n?32?n?1n+91??(?2)n=98??32?n+91??(?2)n
3. 常系數非齊次遞推關系的求解
f ( n ) = c 1 ( n ) f ( n ? 1 ) + c 2 ( n ) f ( n ? 2 ) + . . . + c k ( n ) f ( n ? k ) + g ( n ) f(n)=c_1(n)f(n-1)+c_2(n)f(n-2)+...+c_k(n)f(n-k)+g(n) f(n)=c1?(n)f(n?1)+c2?(n)f(n?2)+...+ck?(n)f(n?k)+g(n)對應的齊次遞推關系為 f ( n ) = c 1 ( n ) f ( n ? 1 ) + c 2 ( n ) f ( n ? 2 ) + . . . + c k ( n ) f ( n ? k ) f(n)=c_1(n)f(n-1)+c_2(n)f(n-2)+...+c_k(n)f(n-k) f(n)=c1?(n)f(n?1)+c2?(n)f(n?2)+...+ck?(n)f(n?k)
定理 3.1:k 階常系數線性非齊次遞推關系的通解是遞推關系的特解加上其相應的齊次遞推關系的通解。即非齊次遞推關系的解 = 特解 + 齊次方程通解
習題6、 求解遞推關系 { f ( n ) = 4 f ( n ? 1 ) ? 3 f ( n ? 2 ) + 3 n ( n ≥ 2 ) f ( 0 ) = 1 , f ( 1 ) = 2 \left\{\begin{matrix} f(n)=4f(n-1)-3f(n-2)+3^n\quad (n\ge2)\\ f(0)=1,f(1)=2 \end{matrix}\right. {f(n)=4f(n?1)?3f(n?2)+3n(n≥2)f(0)=1,f(1)=2?
解: 先求這個遞推關系的通解。其特征方程為 x 2 ? 4 x + 3 = 0 x^2-4x+3=0 x2?4x+3=0,解這個方程得 x 1 = 1 , x 2 = 3 x_1=1,x_2=3 x1?=1,x2?=3因為3是特征方程的一重根,所以該遞推關系的非齊次特解為 a n 3 n an3^n an3n。將其代入遞推關系,得 a n 3 n = 4 a ( n ? 1 ) 3 n ? 1 ? 3 a ( n ? 2 ) 3 n ? 2 + 3 n an3^n=4a(n-1)3^{n-1}-3a(n-2)3^{n-2}+3^n an3n=4a(n?1)3n?1?3a(n?2)3n?2+3n化簡得 a = 3 2 a=\frac{3}{2} a=23?,特解為 f ′ ( n ) = 3 2 n 3 n f'(n)=\frac{3}{2}n3^n f′(n)=23?n3n
而相應齊次遞推關系的通解為 f ′ ′ ( n ) = c 1 ? 1 n + c 2 n ? 3 n f''(n)=c_1\cdot 1^n+c_2n \cdot 3^n f′′(n)=c1??1n+c2?n?3n
通解為 f ( n ) = f ′ ( n ) + f ′ ′ ( n ) = c 1 + c 2 ? 3 n + 3 2 n 3 n f(n)=f'(n)+f''(n)=c_1+c_2\cdot 3^n+\frac{3}{2}n3^n f(n)=f′(n)+f′′(n)=c1?+c2??3n+23?n3n帶入初值確定 c 1 , c 2 c_1,c_2 c1?,c2?,得 { c 1 + c 2 = 1 c 1 + 3 c 2 + 9 2 = 2 \left\{\begin{matrix} c_1+c_2=1\\ c_1+3c_2+\frac{9}{2}=2 \end{matrix}\right. {c1?+c2?=1c1?+3c2?+29?=2?
得 c 1 = 11 4 , c 2 = ? 7 4 c_1=\frac{11}{4} ,c_2=-\frac{7}{4} c1?=411?,c2?=?47?
所以通解為 f ( n ) = 11 4 ? 7 4 ? 3 n + 3 2 n 3 n f(n)=\frac{11}{4}-\frac{7}{4}\cdot3^n+\frac{3}{2}n3^n f(n)=411??47??3n+23?n3n
習題7、 求解遞推關系 { f ( n ) = f ( n ? 1 ) + n 2 f ( 1 ) = 1 , f ( 2 ) = 5 , f ( 3 ) = 14 \left\{\begin{matrix} f(n)=f(n-1)+n^2\\ f(1)=1,f(2)=5,f(3)=14 \end{matrix}\right. {f(n)=f(n?1)+n2f(1)=1,f(2)=5,f(3)=14?
解: 先求這個遞推關系的通解。其特征方程為 x ? 1 = 0 x-1=0 x?1=0,解這個方程得 x = 1 x=1 x=1因為1是特征方程的一重根,所以該遞推關系的非齊次特解為 n 1 ( b 2 n 2 + b 1 n 1 + b 0 ) n^1(b_2n^2+b_1n^1+b_0) n1(b2?n2+b1?n1+b0?)。將其代入遞推關系,得 n 1 ( b 2 n 2 + b 1 n 1 + b 0 ) = ( n ? 1 ) ( b 2 ( n ? 1 ) 2 + b 1 ( n ? 1 ) + b 0 ) + n 2 n^1(b_2n^2+b_1n^1+b_0)=(n-1)(b_2(n-1)^2+b_1(n-1)+b_0)+n^2 n1(b2?n2+b1?n1+b0?)=(n?1)(b2?(n?1)2+b1?(n?1)+b0?)+n2比較系數可得 { b 1 = ? 3 b 2 + b 1 + 1 b 0 = 3 b 2 ? 2 b 1 + b 0 0 = ? b 2 + b 1 ? b 0 \left\{\begin{matrix} b_1=-3b_2+b_1+1\\ b_0=3b_2-2b_1+b_0\\ 0=-b_2+b_1-b_0 \end{matrix}\right. ? ? ??b1?=?3b2?+b1?+1b0?=3b2??2b1?+b0?0=?b2?+b1??b0??,解得 { b 0 = 1 / 6 b 1 = 1 / 2 b 2 = 1 / 3 \left\{\begin{matrix} b_0=1/6\\ b_1=1/2\\ b_2=1/3 \end{matrix}\right. ? ? ??b0?=1/6b1?=1/2b2?=1/3? 特解為 f ′ ( n ) = n ( 1 3 n 2 + 1 2 n + 1 6 ) f'(n)=n(\frac{1}{3}n^2+\frac{1}{2}n+\frac{1}{6}) f′(n)=n(31?n2+21?n+61?)而相應齊次遞推關系的通解為 f ′ ′ ( n ) = c 1 ? 1 n f''(n)=c_1\cdot 1^n f′′(n)=c1??1n
通解為 f ( n ) = f ′ ( n ) + f ′ ′ ( n ) = c 1 ? 1 n + n ( 1 3 n 2 + 1 2 n + 1 6 ) f(n)=f'(n)+f''(n)=c_1\cdot 1^n+n(\frac{1}{3}n^2+\frac{1}{2}n+\frac{1}{6}) f(n)=f′(n)+f′′(n)=c1??1n+n(31?n2+21?n+61?)帶入初值確定 c 1 c_1 c1?,得 c 1 + 1 ? ( 1 3 + 1 2 + 1 6 ) = 1 c_1+1\cdot(\frac{1}{3}+\frac{1}{2}+\frac{1}{6})=1 c1?+1?(31?+21?+61?)=1
得 c 1 = 0 c_1=0 c1?=0
所以通解為 f ( n ) = n ( 1 3 n 2 + 1 2 n + 1 6 ) = 1 6 n ( n + 1 ) ( 2 n + 1 ) f(n)=n(\frac{1}{3}n^2+\frac{1}{2}n+\frac{1}{6})=\frac{1}{6}n(n+1)(2n+1) f(n)=n(31?n2+21?n+61?)=61?n(n+1)(2n+1)
4. 迭代法
但對于某些非線性的遞推關系,不存在求解的公式,因此不能用上述方法。
碰到此類問題,不妨嘗試用迭代歸納法來求解。