生成函数

本文介绍了递推关系的概念,通过定义展示了如何利用生成函数解决递推关系问题,包括汉诺塔问题、错排问题和整数拆分问题。通过实例详细解析了指数型生成函数在错排问题中的应用,以及整数拆分问题的不同解决方案。
摘要由CSDN通过智能技术生成

1. 定义

实数序列 a 0 , a 1 , … , a k , … a_0,a_1,\dots,a_k,\dots a0,a1,,ak,的生成函数是无穷级数
G ( x ) = a 0 + a 1 x + a 2 x 2 + ⋯ + a k x k + ⋯ = ∑ k = 0 ∞ a k x k G(x)=a_{0}+a_{1} x+a_{2} x^{2}+\dots+a_{k} x^{k}+\cdots=\sum_{k=0}^{\infty} a_{k} x^{k} G(x)=a0+a1x+a2x2++akxk+=k=0akxk

2. 定义:什么是递推关系

序列 { a n } \{a_n\} { an}的递归关系是用序列的一个或多个前一项表示an的方程,即 a 0 , a 1 , … , a n − 1 a_0,a_1,\dots, a_{n-1} a0,a1,,an1,对于所有整数 n n n,其中 n ≥ n 0 n\geq n_0 nn0,其中 n 0 n_0 n0是非负整数。

  • 例子
    • 汉诺塔
      h n = 2 h n − 1 + 1 , h 1 = 0 h_n = 2h_{n-1}+1,\quad h_1=0 hn=2hn1+1,h1=0

    • 斐波那契序列
      F n = F n − 1 + F n − 2 , F 1 = F 2 = 1 F_n = F_{n-1}+F_{n-2},\quad F_1 = F_2 = 1 Fn=Fn1+Fn2,F1=F2=1

    • 卡特兰数
      例:用内对角线将一个凸n多边形划分成三角形的并,有多少个不同的划分方法?
      C n + 1 = C 2 C n + C 3 C n − 1 + C 4 C n − 2 + ⋯ + C n 2 C 4 + C n − 1 C 3 + C n C 2 C_{n+1}=C_{2} C_{n}+C_{3} C_{n-1}+C_{4} C_{n-2}+\cdots+C_{n 2} C_{4}+C_{n-1} C_{3}+C_{n} C_{2} Cn+1=C2Cn+C3Cn1+C4Cn2++Cn2C4+Cn1C3+CnC2
      2 ( n − 3 ) C n = n ( C 3 C n − 1 + C 4 C n − 2 + ⋯ + C n − 2 C 4 + C n − 1 C 3 ) 2(n-3) C_{n}=n\left(C_{3} C_{n-1}+C_{4} C_{n-2}+\cdots+C_{n-2} C_{4}+C_{n-1} C_{3}\right) 2(n3)Cn=n(C3Cn1+C4Cn2++Cn2C4+Cn1C3)

    • 错排问题
      n n n个数 1 , 2 , … , n 1,2,…,n 12n错排的数目为 D n D_n Dn,可得递推关系:
      D n = ( n − 1 ) ( D n − 1 + D n − 2 ) , D 0 = 1 , D 1 = 0 , D 2 = 1 D_{n}=(n-1)\left(D_{n-1}+D_{n-2}\right), \quad D_{0}=1,\quad D_{1}=0, \quad D_{2}=1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值