复旦大学计算机科学及工程系 吴永辉 离散数学 生成函数及递推关系.ppt

复旦大学计算机科学及工程系 吴永辉 离散数学 生成函数及递推关系.ppt

  1. 1、本文档共98页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十二章 生成函数与递推关系 12.1 幂级数型生成函数 (多重集的组合) 12.2 指数型生成函数 (多重集的排列) 12.3 递推关系 引言 1. 生成函数(母函数) 生成函数(称为母函数)是组合数学中的一个重要内容,可用来求解组合计数问题。 1)例: (1+a1x)(1+a2x)……(1+anx) =1+(a1+a2+……+an)x+(a1a2+a1a3+……+an-1an)x2+……+ a1a2……anxn x的系数为a1+a2+……+an; /* 包含从{ a1, a2, ……, an }中取一个组合的全体 */ x2的系数为a1a2+a1a3+……+an-1an; /*包含从{ a1, a2, ……, an }中取两个组合的全体 */ x3的系数为a1a2a3+a1a2a4+……+an-2an-1an; /*包含从{ a1, a2, ……, an }中取三个组合的全体 */ ………… xn的系数为a1a2……an; /*包含从{ a1, a2, ……, an }中取n个组合的全体 */ 若令a1=a2=……=an=1, 则(1+x)n=1+ C(n, 1)x+C(n, 2)x2+……+C(n, n)xn (1+x)n= C(n, k):从{ a1, a2, ……, an }中取k个的组合数。 2)例: (1+x)m(1+x)n=(1+x)m+n 左式=[C(m, 0)+C(m, 1)x+……+C(m, m)xm]?[C(n, 0)+C(n, 1)x+……+C(n, n)xn] 右式= [C(m+n, 0)+C(m+n, 1)x+……+ C(m+n, m+n)xm+n] 展开左式,得: C(m, 0)?C(n, 0)+[C(m, 1)?C(n, 0)+ C(m, 0)?C(n, 1)]x+ [C(m, 2)?C(n, 0)+ C(m, 1)?C(n, 1)+C(m, 0)?C(n, 2)]x2+……+C(m, m)?C(n, n)xm+n 比较对应项的系数,得: C(m+n, 1)=C(m, 1)?C(n, 0)+ C(m, 0)?C(n, 1) C(m+n, 2)= C(m, 2)?C(n, 0)+ C(m, 1)?C(n, 1)+ C(m, 0)?C(n, 2) …………… 一般有: C(m+n, r)=C(m, 0)C(n, r)+C(m, 1)C(n, r-1)+……+C(m, r)C(n, 0) /*Vandermonde恒等式*/ 2. 生成函数(母函数)的定义 对于序列a0, a1, a2, ……,定义a0+a1x+a2x2+……为序列a0, a1, a2, ……的生成函数(母函数)。 例如: (1+x)n是C(n, 0), C(n, 1), C(n, 2), ……, C(n, n)的生成函数(母函数)。 3. 生成函数(母函数)的实例 有红球两只,白球、黄球各一只,有多少种不同的组合方案?设r, w, y分别代表红球,白球和黄球。 解题思想: 红球不取(r0=1),取1只(r1=r),取2只(r2); 黄球不取(y0=1),取1只(y1=y), 白球不取(w0=1),取1只(w1=w), 根据乘法原理: (1+r+r2)(1+w)(1+y) =1+(r+w+y)+(r2+ry+rw+yw)+(r2y+r2w+rwy) +r2yw 取一个球的组合数为3: r,w,y 取两个球的组合数为4: r2,ry,rw,yw 取三个球的组合数为3: r2y,r2w,rwy 取四个球的组合数为1: r2yw 许多组合学计数问题依赖于一个整数参数n。这个参数n常常表示问题中某个基本集或多重集的大小、组合的大小、排列中的位置等。因此一个计数问题常常不是一个孤立的问题而是一系列的单个问题。 例:令hn表示{1, 2, …, n}的排列数。hn=n!,于是得到数列h0, h1, h2, …, hn, …。对于这个数列,一般项hn=n!,通过选择n为一个特定的整数可以得到这个问题的一个实例。如:h5=5!。 一个整数参数的某些计数问题的代数求解方法,或者导致一个显式公式,或者归结为一个函数,即生成函数,它的幂级数的系数给出计数问题的解。 12.1 幂级数型生成函数 一、实例 二、生成函数的定义 三、形式幂级数的运算性质 四、用生成函数来求多重集的r-组合数 一、实例 11章提到: 求多重集S={n1·a1,n2·a2,…,nk·ak} (n=n1+n2+…+nk)的r-组合数时,当对一切i=1,2,…,k有ni?r时,有计算公式N=C(k+r-1, r);而当rn,且存在某个nir,

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档